Innehåll. Föreläsning 4-5. Logiska system. Alfabet. Calculus. Well-formed formulas. Vanliga termer i logik Satslogik. Första ordningens predikatlogik

Relevanta dokument
Innehåll. Föreläsning 7. Satslogiken är för grov. Samma sak i predikatlogik: Första ordningens predikatlogik. Logik med tillämpningar

Föreläsning 8. Innehåll. Satisfierbarhet hos en formel. Logik med tillämpningar

Grundläggande logik och modellteori

Grundläggande logik och modellteori (5DV102)

Grundläggande logik och modellteori

Grundläggande logik och modellteori (5DV102)

Sanningsvärdet av ett sammansatt påstående (sats, utsaga) beror av bindeord och sanningsvärden för ingående påståenden.

Filosofisk Logik (FTEA21:4) föreläsningsanteckningar/kompendium. v. 2.0, den 29/ III. Metalogik 17-19

p /\ q r DD1350 Logik för dataloger Kort repetition Fö 3 Satslogikens semantik

Avslutning. Vad? Hur? Anmärkningar inför tentan 2. Vad ska kunnas?

Tommy Färnqvist, IDA, Linköpings universitet. 2 Strukturer Domäner Tolkningar... 3

*UXSS YQLQJ±/RJLNPHGWLOOlPSQLQJDUYW

Satslogik grundläggande definitioner 3. Satslogik. Uppgift 1. Satslogikens syntax (välformade formler) Satslogikens semantik (tolkningar)

Utsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section

Datorlingvistisk grammatik I Institutionen för lingvistik och filologi Oktober 2007 Mats Dahllöf

MATEMATIKENS SPRÅK. Avsnitt 1

Normalisering av meningar inför resolution 3. Steg 1: Eliminera alla och. Steg 2: Flytta alla negationer framför atomära formler

7, Diskreta strukturer

Tommy Färnqvist, IDA, Linköpings universitet. 1 Kursadministration 1. 2 Introduktion Varför logik? Satslogik... 2

FÖRELÄSNING 3 ANDERS MÄRAK LEFFLER IDA/HCS

DD1350 Logik för dataloger. Fö 7 Predikatlogikens semantik

7, Diskreta strukturer

Avslutning. Vad? Hur? Anmärkningar inför tentan 2. Vad ska ni kunna?

Robin Stenwall Lunds universitet

Predikatlogik: Normalformer. Klas Markström

Om semantisk följd och bevis

Robin Stenwall Lunds universitet

Robin Stenwall Lunds universitet

Semantik och pragmatik (Serie 4)

Semantik och pragmatik

Logik I. Åsa Hirvonen Helsingfors universitet. Våren 2013

En introduktion till predikatlogik

K3 Om andra ordningens predikatlogik

Vad är det? Översikt. Innehåll. Vi behöver modeller!!! Kontinuerlig/diskret. Varför modeller??? Exempel. Statiska system

8. Naturlig härledning och predikatlogik

Föreläsning 5. Deduktion

Logik för datavetare DVK:Log Tisdagen 28 oktober Institutionen för dataoch systemvetenskap David Sundgren

Kap. 7 Logik och boolesk algebra

Grundläggande logik och modellteori

Logisk semantik I. 1 Lite om satslogik. 1.1 Konjunktioner i grammatisk bemärkelse. 1.2 Sant och falskt. 1.3 Satssymboler. 1.

Logik och kontrollstrukturer

FÖRELÄSNING 8 ANDERS MÄRAK LEFFLER IDA/HCS

Logik och bevisteknik lite extra teori

D. x 2 + y 2 ; E. Stockholm ligger i Sverige; F. Månen är en gul ost; G. 3 2 = 6; H. x 2 + y 2 = r 2.

Varför är logik viktig för datavetare?

Filosofisk logik Kapitel 19. Robin Stenwall Lunds universitet

Formell logik Kapitel 3 och 4. Robin Stenwall Lunds universitet

Grundläggande logik och modellteori

Grundläggande logik och modellteori

Lektion 8: Konstruktion av semantiska tablåer för PTL-formler

Lite om bevis i matematiken

DD1350 Logik för dataloger

Övningshäfte 1: Logik och matematikens språk

F. Drewes Datavetenskapens grunder, VT02. Lite logik

Semantik och pragmatik

Logik: sanning, konsekvens, bevis

Formell logik Kapitel 9. Robin Stenwall Lunds universitet

DD1350 Logik för dataloger. Fö 2 Satslogik och Naturlig deduktion

Sats. Om t är en rätvinklig triangel så är summan av kvadraterna på kateterna i t lika med kvadraten på hypotenusan.

Filosofisk logik Kapitel 18. Robin Stenwall Lunds universitet

Kompletteringsmaterial. K2 Något om modeller, kompakthetssatsen

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

K2 Något om modeller, kompakthetssatsen

Föreläsning 9: NP-fullständighet

MA2047 Algebra och diskret matematik

MATEMATIKENS SPRÅK. Syftet med denna övning är att med hjälp av logik lära oss att uttrycka matematik mer exakt, lära oss

DD1361 Programmeringsparadigm HT15

729G06 Logik FÖRELÄSNING 1 ANDERS MÄRAK LEFFLER IDA/HCS

13. CHURCH S OCH GÖDELS SATSER. KORT ORIENTERING OM BERÄKNINGSBARHET, EFFEKTIV UPPRÄKNELIGHET OCH AVGÖRBARHET.

En introduktion till logik

Sanning och lögnare. Rasmus Blanck VT2017. FT1200, LC1510 och LGFI52

Semantik och pragmatik (Serie 3)

Filosofisk logik Kapitel 15. Robin Stenwall Lunds universitet

DD1350 Logik för dataloger

DD1361 Programmeringsparadigm HT17

MATEMATIKENS SPRÅK. Syftet med denna övning är att med hjälp av logik lära oss att uttrycka matematik mer exakt,

DD1361 Programmeringsparadigm HT16

Introduktion till predikatlogik. Jörgen Sjögren

Logik och modaliteter

MA 11. Hur starkt de binder. 2 Reella tal 3 Slutledning 4 Logik 5 Mängdlära 6-7 Talteori 8 Diofantiska ekvationer 9 Fördjupning och kryptografi

Viktiga frågor att ställa när ett argument ska analyseras och sedan värderas:

Digital- och datorteknik

Något om logik och logisk semantik

Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet

Logik. Dr. Johan Hagelbäck.

Filosofisk logik Kapitel 15 (forts.) Robin Stenwall Lunds universitet

Grundläggande logik och modellteori

Föreläsning 8+9: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning?

Grundläggande logik och modellteori

9. Predikatlogik och mängdlära

LMA033/LMA515. Fredrik Lindgren. 4 september 2013

ANDREAS REJBRAND NV3ANV Matematik Matematiskt språk

Logik. Boolesk algebra. Logik. Operationer. Boolesk algebra

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer

Föreläsning 7+8: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning?

Föreläsning 6. pseudokod problemlösning logik algoritmer

Algoritmer, datastrukturer och komplexitet

Föreläsningsanteckningar och övningar till logik mängdlära

Induktion, mängder och bevis för Introduktionskursen på I

Föreläsning 3: Booleans, if, switch

Transkript:

Innehåll Föreläsning 4-5 Logik med tillämpningar 010220 Vanliga termer i logik Satslogik syntax och semantik beslutsprocedurer Första ordningens predikatlogik syntax och semantik Kapitel 3-5: Topic 8-11 Logiska system Syntax - Definierar regler för vilka symboler vi kan använda och hur dessa kan kombineras och manipuleras Semantik - Ger en mening åt symbolerna och gör formlerna användbara. Viktiga beståndsdelar är: Alfabet Calculus Well-formed-formulas wffs Alfabet Vilka symboler får vi använda i vårt logiska system? p, q, r, (atomer),,,, (konnektiv) (, ) Calculus Hur får man gå tillväga när man skapar nya formler utifrån gamla? Inferensregler Kedjeregeln OmA BochB C så får man lägga till A C till systemet. Well-formed formulas Hur får vi kombinera våra symboler till uttryck? formel ::= p formel ::= formel formel ::= (formel ) formel ::= formel op formel op ::= = Exempel: (p q) rmenintepq

Relationen mellan syntax och semantik Syntaktiska och semantiska bevis Fig 3.1 sidan 114 Fig3.2sidan115 Axiomsystem Man bygger upp en teori från en mängd axiom och försöker bevisa saker med hjälp av dem. Man behöver: Ettalfabet En mängd axiom (wffs). (Inte nödvändigtvis sanna ) Inferensregler - hur får jag dra slutsatser? Krav på axiomsystem Inga motsägelser i systemet Kan man bevisa formeln A ska man inte samtidigt kunna bevisa formeln A. Fullständighet (completeness) Alla sanna formler måste gå att härleda från systemet. Oberoende Inget axiom ska gå att härleda från de andra axiomen Avgörbarhet Det måste gå att avgöra för varje formel om den är sann eller ej. Satslogik Består av satser (propositioner) som kan vara sanna eller falska. En sats brukar kallas atom Betecknasoftap,q,r,s, Satserna binds samman med konnektiv till formler. En literal är en atom eller negationen av en atom, dvs p eller p Sanningstabeller p q p q p q p q p q p q F F F F T T F F T F T T F T T F F T F F T T T T T T T F Och, konjuktion Eller, disjunktion Implikation Ekvivalens XOR, exclusiveor p F T Not p T F

Prioritetsordning och association Tolkningar (=interpretationer) 1 2 3 4 5 6 7 Operatorer är vänsterassociativa dvs a b c ska tolkas ((a b) c) Med hjälp av prioritetsordningen och associationsregeln slipper vi en hel del parenteser. ((p q) ((( p) ( q)) p)) kan skrivas p q p q p men man brukar (precis som i programmering) ha med några parenteser för tydlighetens skull p q (( p q) p) Definition Låt A vara en sats, och låt {p 1,, p n } vara mängden av atomer som förekommer i A. En tolkning för A är en funktion v:{p 1,, p n } {T, F}, dvs v anger ett sanningsvärde för varje atom i A. Sanningsvärdet som ges för en sats följer sanningstabellernas definitioner. Viktiga definitioner En formel A är satisfierbar om den har värdet T i någon tolkning. En sådan tolkning kallas för en modell för A. Aärentautologi (är valid) om dess värde är T i alla tolkningar. Notation A En formel är osatisfierbar eller en motsägelse om den inte är satisfierbar, dvs den har värdet F i alla tolkningar (den har ingen modell). Den är icke-valid eller falsifierbar om den har värdet F i någon tolkning. Logisk ekvivalens Definition: Två formler A 1 och A 2 sägs vara logiskt ekvivalenta om v(a 1 )=v(a 2 ) för alla tolkningar v. Notation: A 1 A 2. För att visa ekvivalens räcker det att kontrollera alla tolkningar som anger sanningsvärden för atomerna i de avsedda formlerna. Sidan 131 visar viktiga ekvivalenser som bör sitta i ryggraden. Är inte och samma sak? Tecknet är bara ett kortare sätt att skriva är logiskt ekvivalent med, men är en operator i logiken som vi beskriver. Metaspråk och Objektspråk. Teorem Aärvalidomm A är osatisfierbar. Aärsatisfierbaromm A är falsifierbar. Teorem A l A 2 omm A l A 2 är sann i alla tolkningar. Ett bevis för att A är valid är samtidigt ett bevis för att A är osatisfierbar.

Definition En mängd formler U={A 1,A 2,,A n } är (ömsesidigt) satisfierbar eller konsistent om det finns en tolkning (för atomerna i U)såatt v(a 1 )=v(a 2 )= =v(a n )=T Definition U är en mängd formler och A är en formel. Om A är sann i alla modeller för U så är A en logisk konsekvens av U.NotationU A. (Kom ihåg: En tolkning är en modell för U om den ger värdet T för alla formler i U.) och hör ihop på samma sätt som och : Teorem U A omm A 1 A 2 A n A. Vi minns: A 1 A 2 A n A betyder att A 1 A 2 A n A måste vara sann oavsett vad som står framför, dvs i alla tolkningar, dvs valid. Vi kan nu definiera matematiska teorier. Definition Låt T(U) = {A U A}. T(U) kallas teorin av U och elementen i T(U) kallas teoremen av U.Elementeni U kallas axiomen av T(U). I en matematisk teori antar vi en mängd formler som sanna (axiomen) och teorin definierar de logiska konsekvenserna av våra antaganden. Exempel på bevis Teorem 1 Om U är osatisfierbar så är även U {B} osatisfierbar för alla formler B. Teorem 2 OmUärsatisfierbarsåärU-{A i }också satisfierbar för godtycklig formel A i,1 i n. Beslutsprocedur Givet en klass av formler U, är en algoritm en beslutsprocedur för U om, givet en godtycklig formel A, algoritmen terminerar och returnerar svaret ja om A U och nej om A U. Klassen ovan kan t ex vara klassen av satisfierbara formler eller klassen av valida formler. Sundhet och fullständighet För att ett logiskt system ska vara användbart måste det vara sunt och fullständigt. Sundhet: Om man kan bevisa A med hjälp av systemet måste A vara valid (en tautologi). A A Fullständighet: Om A är valid (en tautologi) måste A gå att bevisa i systemet. A A

Exempel If m is negative then q is negative. If p is positive then q is negative. Therefore if m is negative or p is positive then q is negative. Omvandla till satslogik Hitta satserna! m = m is negative, q = q is negative, p = p is positive Översätt meningarna! m q p q (m p) q Problemlösning Ofta presenteras en mängd (U) med fakta (A1, A2,,An)följtavenslutsatsA. Vi vill med andra ord visa U = A. Detta kan vi göra genom att visa att A1 A2 An Aärvalid. Vårt exempel: [(m q) (p q)] [(m p) q] Vi gör en sanningstabell! Problemlösning Ofta presenteras en mängd (U) med fakta (A 1,,A n ) följt av en slutsats A. Vi vill med andra ord visa U = A. Detta kan vi göra genom att visa att A 1 A 2 A n Aärvalid. Observera: (A 1 A 2 A n A) ( (A 1 A 2 A n ) A) (A 1 A 2 A n A) Dvs att visa att A 1 A 2 A n A är valid är samma som att visa att A 1 A 2 A n Aärenmotsägelse Refutering (Kallas även för motsägelsebevis.) Vi visar att A är valid genom att visa att A är osatisfierbar. En beslutsprocedur för validitet som bygger på en beslutsprocedur för satisfierbarhet. Det är enkelt att skapa en beslutsprocedur för satisfierbarhet: Sök igenom alla olika tolkningar (ändligt antal) om vi hittar en som ger värdet T är svaret Ja annars Nej. Mer effektiv metod: Resolution Normalformer För att kunna använda sig av resolution måste formlerna vara på normalform. Alla wffs kan omvandlas till normalform Ekvivalenserna från sid 131 viktiga Konjunktiv normalform - CNF Disjunktiv normalform - DNF Negation normalform - NNF (läs i boken!) Normalformer En formel är i konjunktiv normalform (CNF) om den är en konjunktion av disjunktioner av literaler. En formel är i disjunktiv normalform (DNF) om den är en disjunktion av konjunktioner av literaler. ( p q) r p CNF ( p q) ( r p) DNF ( p q) ((p q) r) (p) ingendera ( p q) ( r p) ingendera

Konvertering till CNF 1. Använd ekvivalenser för att ta bort alla konnektiv utom, och. 2. Flytta in negationerna så långt som möjligt med hjälp av De Morgans lagar. Ta samtidigt bort dubbla negationer. 3. Använd distributiva lagarna för att nå CNF-form. Exempel: a) (p q) ( p r) b) ((p 1 p 2 ) (p 3 (p 4 p 1 ))) m q m q p q p q Vårt exempel: ((m p) q) Frågan negeras! ( (m p) q) (m p) q Klausul, klausulform, enhetsklausul Klausul = mängd med literaler och Vi kan notera att det i en mängd inte kan finnas dubletter. Inget problem, eftersom p p poch p p p Enhetsklausul = en klausul med endast en literal En formel i klausulform är satisfierbar omm motsvarande CNF-formel är satisfierbar. Formeln ( p q) r p skrivs som en klausulmängd enligt {( p q), r, p} Vårt exempel: { m q, p q, m p, q} Resolutionsregeln Låt C 1 och C 2 vara klausuler så att l C 1 och l c C 2. C 1 och C 2 är då kolliderande (clashing) klausuler och de kolliderar på de kompletterande literalerna l och l c. Klausulen C=Res(C 1,C 2 )=(C 1 -{l}) (C 2 -{l c }) kallas för resolventen av C 1 och C 2. C 1 och C 2 är föräldraklausuler till C. Är resolventen satisfierbar?? Resolventen C är satisfierbar omm föräldraklausulerna C1 och C2 är (ömsesidigt) satsifierbara. Resolutionsproceduren Låt S vara en mängd klausuler och definiera S 0 =S. Antag att vi har konstruerat S i. Välj två kolliderande klausuler C 1,C 2 S i,ochlåtc vara resolventen Res(C 1,C 2 ). Om C= ❹ kan proceduren avbrytas, eftersom S då är osatsifierbar. Annars konstruera S i+1 =S i {C}.OmS i+1 =S i för alla möjliga kollisioner, avbryts proceduren, S är satisifierbar.

1. m q 2. p q 3. m p 4. q Vårt exempel: 5. m 1o4 6.p 3o5 7.q 2o6 8. ❹ 4o7 Ett logiskt problem: After baking a pie for the two nieces and two nephews who are visiting her, aunt Nellie leaves the pie on her kitchen table to cool. Then she drives to the mall to close her boutique for the day. Upon her return she finds that someone has eaten one quarter of the pie (and even had the nerve to leave her or his dirty plate next to the remainder of the pie). Since no one was in her house that day - except for the four visitors - aunt Nellie questions each niece and nephew about who ate the piece of pie. The four "suspects" tell her the following: Charles: Kelly ate the piece of pie. Dawn: I did not eat the piece of pie. Kelly: Tyler ate the pie. Tyler: Kelly lied when she said I ate the pie. If only one of these four statements is true and only one of the four committed this heinous crime, who is the vile culprit who aunt Nellie will have to punish severely? Formulera problemet logiskt! Viktiga frågor att ställa sig: Vilka fakta i texten är viktiga? Vilka atomer ska jag använda? Hur formulera faktat? C - Charles åt pajen D-Dawnåtpajen K - Kelly åt pajen T - Tyler åt pajen CS - Charles talar sanning DS - Dawn talar sanning KS - Kelly talar sanning TS - Tyler talar sanning Viktiga fakta: Charles: Kelly ate the piece of pie. CS K Dawn: I did not eat the piece of pie. DS D Kelly: Tyler ate the pie. KS T Tyler: Kelly lied when she said I ate the pie. TS T Endast en av utsagorna är sanna (CS DS) (CS KS) (CS TS) (DS KS) (DS TS) (KS TS) (CS DS KS TS) Endast en av de fyra åt pajen: (C D) (C K) (C T) (D K) (D T) (K T) (C D K T) Antagande: Dawn åt pajen, negeras (varför?) D Hur lösa problemet? Antag att en person är skyldig och visa att detta är en logisk konsekvens av förutsättningarna. Vilken metod? Sanningstabeller 8 atomer i formlerna ger en tabell med 28 = 256 rader! För jobbigt! Resolution Låt oss undersöka! Omvandling till CNF: CS K (CS K) (K CS) DS D KS T TS T ( CS K) ( K CS) ( DS D) (D DS) ( KS T) ( T KS) ( TS T) (T TS) (CS DS) (CS KS) (CS TS) (DS KS) (DS TS) (KS TS) (CS DS KS TS) ( CS DS) ( CS KS) ( CS TS) ( DS KS) ( DS TS) ( KS TS) (CS DS KS TS) (C D) (C K) (C T) (D K) (D T) (K T) (C D K T) ( C D) ( C K) ( C T) ( D K) ( D T) ( K T) (C D K T) D

Färdig klausulmängd 1. CS K, 2. K CS, 3. DS D, 4. D DS, 5. KS T, 6. T KS, 7. TS T, 8. T TS, 9. CS DS, 10. CS KS, 11. CS TS, 12. DS KS, 13. DS TS, 14. KS TS, 15. CS DS KS TS, 16. C D, 17. C K, 18. C T, 19. D K, 20. D T, 21. K T, 22. C D K T, 23. D} Resolutionen 24. DS 4 o 23 (D DS o D) 25. KS 12o24 ( DS KS o DS) 26. T 6 o25 ( T KS o KS) 27. TS 8 o 26 (T TS o T) 28. DS 13o27 ( DS TS o TS) 29. ❹ 24o28 (DS o DS) Olika sätt att göra bevis Syntaktiska metoder Bevis där man utgår från axiomen i ett logiskt system och enbart använder inferensregler för att bygga nya teorem. (Modus ponens tex) Semantiska metoder Bevis där man går igenom alla tänkbara tolkningar och visar att formeln är sann i alla dessa. Motsägelsebevis Antag negationen av det man vill visa och visa att detta leder till en motsägelse. Resolution används oftast på detta sätt (inte fullständig annars!) Satslogiken är för grov Försök uttrycka detta i satslogik: Alla män är dödliga. Sokrates är en man. Därför är Sokrates dödlig Intuitivt förstår vi att utsagan är valid men i satslogiken skulle formeln se ut så här: A =S= D och det är inte en valid formel. En del fåglar kan inte flyga. Samma sak i predikatlogik: x(man(x) dödlig(x)) man(sokrates) dödlig(sokrates) Hela implikationen uttrycks som man(sokrates) = x(man(x) =dödlig(x)) =dödlig(sokrates) x(fågel(x) flyga(x)) Notera att man måste hålla isär symbolerna i språket och den mening vi ger symbolerna. De mekaniska formelmanipulationer vi skall ägna oss åt tar ingen hänsyn till eventuella kopplingar mellan symbolers namn och verkliga saker och egenskaper vi gör i vårt huvud. x(fågel(x) flyga(x)) kan lika gärna stå för det finns människor som inte kan läsa.

Predikat och relationer När vi hävdar något om ett objekt vill vi symbolisera både objektet och det som vi hävdar. Vi kallar detta för predikat. ( Wearepredicating some property of the object ) Fåglar kan flyga. Katten är svart. Förutom egenskaper så behöver man ofta prata om relationer mellan objekt. Predikatet kan ses som en relation över en given domän. Lisa är äldre än Stina. Kuben ligger mellan cirklarna. Det vi har lärt oss om satslogiken kan nu överföras på predikatlogiken. Vi har infört domäner och predikat, vilket komplicerar detaljerna, men de underliggande mekanismerna kvarstår. För att undvika att behöva referera till element i specifika domäner inför vi kvantifierare för att kunna uttrycka att ett predikat är sant för några eller alla element i en domän. Kvantifierare =kallas för allkvantor och uttrycket x uttalas för alla x kallas för existenskvantor och uttalas "det finns ett x eller det existerar ett x. Kvantifierare binder lika starkt som negation Ienkvantifierad formel som ( x A)kallasxför kvantifierad variabel eller bunden variabel och formeln A är räckvidden för x. x måste inte förekomma i A. x y(p(x, y) p(y, x)) yp(x,y) x y(p(x) p(y)) xp(a,x) xp(x) x =p(x) Exempel på formler Funktioner Vissa saker är svåra att uttrycka med predikat: x=> y (x + 1) > (y + 1) gt(x, y) gt(x+1, y+1)?? x+1? Jo Ann s father likes music. x(f(x, j) L(x,m))?? Har Jo Ann fler pappor? Behöver använda oss av funktioner. gt(x, y) gt(plus(x,1), plus(y,1)) L(f(j), m) Första ordningens språk Alfabetet konstanter (a, b, c,...) variabler (x, y, z, ) funktionsbokstäver (f, g, h, ) predikatbokstäver (p, q, r, ) logiska konnektiv,=,=,=,= kvantifierare,= (,)och,

Termer Termer står för objekt och definieras: Varje konstant är en term Varje variabel är en term Omt 1,t 2,,t n är termer så är f(t 1,t 2,,t n )enterm Inget annat är termer. a, x, f(a, x) och g(f(a, f(x)) är exempel på termer En term är sluten (stängd, closed) om den inte innehåller variabler. Formler En formel (wff) definieras: p(t 1,t 2,,t n ) är en formel där alla t i är termer. Om A och B är formler så är ( A), (A B), (A B), (A B) och (A B) också formler. Om A är en formel så är x i Aocksådet. Om A är en formel så är x i Aocksådet. Inget annat är en formel. p(a,b),p(x,f(a,b,c))ochp(x,g(x))ärexempelpå formler Varför första ordningen? I första ordningens predikatlogik tillåter vi kvanitifering av variabler. Dvs för alla x gäller att... I högre ordningens logiker kan man även kvantifiera predikaten och funktionerna. Ibland kallas satslogiken för nollte ordningens predikatlogik. Formler Wffs av typen p(t 1,t 2,,t n ) kallas för atomiska formler eller atomer. En formel är sluten (stängd, closed) om den inte innehåller fria variabler. (se definition senare) Annars är den öppen. Räckvidd och bindning Iformlerna x i Aoch x i AsägsAvararäckvidden för variabeln x i. x(p(x, y) p(x)), räckvidden för x är p(x, y) p(x) xp(x, y) p(x), räckvidden för x är endast p(x, y). En variabel x i är bunden om den är inom räckvidden för en kvantifierare x i Aeller x i A. x(p(x, y) p(x)) variabeln x är bunden medanyärfri. Tolkningar För att ge en syntaktisk formel semantisk mening måste man tolka den. En tolkning I=(D,{d 1,,d k }, {F 1,,F m }, {R 1,..., R n }) består av: D, en icke-tom domän av objekt. En tilldelning av ett element d i D till varje konstant a i. En tilldelning av en funktion F i :D n D till varje funktionssymbol f i En tilldelning av en relation R i D n till varje predikatsymbol p i För att få reda på om formeln är sann i en tolkning måste man titta på dess värdering.

Värdering (valuation) En värdering v av en stängd formel under en tolkning I i ett första ordningens språk L är en funktion från termerna i språket L till domänen D så att: v(c i ) = I(c i ), dvs värdet av en konstant är given av tolkningen. v(f(t 1,t 2,,t n ))=F I (v(t 1 ), v(t 2 ),, v(t n )) Satisfiering Låt I vara en tolkning i ett språk L, v en värdering under tolkningen I och A en wff. Då gäller att: Om A är en atom p(t 1,t 2,,t n )såsatisfierar v A (dvs v(a) = T) omm R (v(t 1 ), v(t 2 ),, v(t n )) gäller i domänen D. OmA= B gällerattv( B) = T omm v(b) = F. Om A = B op C gäller att v(b op C) följer sannings-tabellen för op. Om A = xb gäller att v( xb) = T omm v satisfierar B för alla element i D Om A = xb gäller att v( xb) = T omm v satisfierar B för något element i D Man skriver v(a) för det tolkade värdet av A. Modeller, satisfierbarhet,validitet EnformelAärsannientolkningIomvarje värdering v satisfierar A. (Falsk om ingen gör det). Om A är sann i tolkningen I, är I en modell för A elleraärsatisfierbar. Aärvalid om alla tolkningar är modeller En formel kan alltså vara Satisfierbar - om formeln är satisfierad i någon värdering i en given tolkning. Sann i tolkningen I - om formeln är satisfierad i alla värderingar i tolkningen I. Valid - om formeln är satisfierad i alla värderingar i alla tolkningar. Motsägelse - om formeln inte är satisfierad i någon värdering i någon tolkning. Sanningsvärden för öppna formler då? En formel med fria variabler kan bara få värderingar för givna värden på de fria variablerna. Det går inte att uttala sig om satisfierbarhet i allmänhet. Men detta gäller: En öppen formel är satisfierbar omm dess existential closure är satisfierbar. En öppen formel är valid omm dess universial closure är valid. Några viktiga ekvivalenser (s 151) x A(x) x A(x) xa(x) x A(x) x A(x) x A(x) x y A(x, y) y x A(x, y) Det omvända gäller inte. Prova I = {Z, {}, {}, { }} x(a(x) B(x)) ( xa(x) xb(x)) x(a(x) B(x)) ( xa(x) xb(x))

Fler ekvivalenser Dessa två gäller bara ena vägen : xa(x) xb(x) x(a(x) B(x)) x(a(x) B(x)) ( xa(x) xb(x)) x(a(x) B) ( xa(x) B) Ty, x(a(x) B) x( A(x) B) x A(x) B xa(x) B xa(x) B