729G06 Logik FÖRELÄSNING 1
Transcription
729G06 Logik FÖRELÄSNING 1
729G06 Logik FÖRELÄSNING 1 ANDERS MÄRAK LEFFLER IDA/HCS 150120 [uppd] Vad har man logik till? 2 Vad är logik? Som ämne, område... 3 Läran om korrekta resonemang Följer slutsatserna av ens antaganden? 4 Vad är en logik? Syntax + semantik 5 Syntax Vad är ett korrekt uttryck? 6 Semantik Vad betyder (de korrekta) uttrycken? 7 Vilken är vår logik? (”den vanliga”) 8 Denna kurs • Använda (första ordningens) predikatlogik • Formalisera resonemang • Visa att en slutsats följer. – Sanningstabeller – Naturlig deduktion • Motexempel. Visa att slutsatsen inte följer. 9 Logikkursen Upplägg 10 SATSLOGIK 11 Satslogik A → ((A v B) v C) (A v B) ∧ A A→B (OBS, inga ∀, ∃) 12 Grundläggande syntax • Atomära satser. Kan vara sanna eller falska. – Vampyrer finns. – Folk är rädda. • Använd ofta bara satssymboler – Låt V betyda ”Vampyrer finns.” – Låt R betyda ”Folk är rädda”. • Konnektiven ∧, ∨ , ¬, →, ↔ • (Parenteser) 13 - Konjunktion (och) Syntax, exempel V : Det finns vampyrer. R: Folk är rädda. Semantik (jfr sanningstabell) φ∧ψ sant om både φ och ψ är sanna. Annars falsk. V ∧ R - Det är både så att det finns vampyrer, och folk är rädda. Syntax, generellt φ∧ψ, φ och ψ formler. Φ och ψ kallas konjunkter 14 - Disjunktion (eller) Syntax, exempel V : Det finns vampyrer. R: Folk är rädda. Semantik (jfr sanningstabell) φ ∨ ψ sant så fort något av φ och ψ är sant. Annars falsk. V ∨ R – Antingen finns det vampyrer eller så är folk rädda. Eller både och. Syntax, generellt φ ∨ ψ, φ och ψ formler. Φ och ψ kallas disjunkter 15 ¬ - Negation (inte) Syntax, exempel V : Det finns vampyrer. R: Folk är rädda. Semantik (jfr sanningstabell) ¬φ falsk precis när φ sann. Annars sann. ¬V : Det är inte så att vampyrer finns. ¬(V ∧ R)? Det är inte både så att vampyrer finns och folk är rädda samtidigt. (Men möjligt att folk är rädda utan vampyrer.) Syntax, generellt ¬φ, φ formel 16 → - Implikation Syntax, exempel V : Det finns vampyrer. R: Folk är rädda. V → R – Om det finns vampyrer så är folk rädda. OBS! Vi säger inget om vad som händer om vampyrer inte finns. Semantik (jfr sanningstabell) •φ → ψ enbart falsk om ψ är falsk och φ sann. Annars sann. •φ → ψ är sann om konsekventen ψ är minst lika sann som φ Syntax, generellt φ → ψ, φ och ψ formler. Φ kallas antecedent, ψ kallas konsekvent 17 ↔ - Ekvivalens Syntax, exempel V : Det finns vampyrer. R: Folk är rädda. Semantik (jfr sanningstabell) φ ↔ ψ sann när ψ och φ har samma sanningsvärde. Annars falsk. V ↔ R – Folk är rädda om och enbart om (omm) det finns vampyrer. Finns vampyrer, så är folk rädda. Är folk rädda, så finns vampyrer. Syntax, generellt φ ↔ ψ, φ och ψ formler. 18 Problem AvB C 19 Parenteser och prioritet (A v B) ∧ C versus A v (B∧C) ∧ • Styr prioritering. I övre måste C vara sant. 20 Parenteser och prioritet Formellt: parenteser krävs. Konvention: läs in dem när de saknas. A v B ∧ C läses A v (B ∧ C) A v B → C läses (A v B) → C ¬A∧B läses (¬A)∧B 21 Parenteser och prioritet In propositional formulas the order of precedence from high to low is as follows: negation, conjunction, nand, disjunction, nor, implication, equivalence, exclusive or. (Ben-Ari – Mathematical logic..., kap 2.2) ¬ v → ↔ 22 Syntaktisk korrekthet OK: ¬A, A v(B C), A→A ”OK”: A v B v C, ¬¬A [läs (A v B) v C, ¬(¬A)] FEL: →A, Q¬vP, Q eller P 23 Satslogik FORMALISERING [I] 24 Folk blir rädda om det är vampyrer i närheten. Och nu är det ju vampyrer i närheten. Så då borde väl folk vara rädda. 25 Steg (i satslogik) 1. Identifiera utsagor som kan vara sanna/falska. Det vill säga atomära satser. Vampyrer här. Folk rädda. 1. Skriv satssymboler R, V 2. Identifiera relationer, ersätt med konnektiv. ”Folk blir rädda om det är vampyrer i närheten...” implikationslikt. V→R OBS! Lätt modifikation av betydelsen. Fångar vi det vi vill? 26 Satslogikens gränser 27 Bill Gates är rik Alltså finns någon som är rik. G = Gates är rik, N = Någon är rik? Satslogiken räcker inte! 28 Alla människor är dödliga. Sokrates är en människa. Alltså är Sokrates dödlig. 29 Mängder av objekt Och hur de hänger ihop 30 Syntax PREDIKATLOGIK 31 Predikatlogik Utöka syntaxen med • Predikat (P, R, Q,...) • Konstanter (a,b,c,billgates,....) • Funktioner (f,g,+,*,...) • Variabler (x,y,z,...) • Identitet (=) • Kvantifierare (∃, ∀) • Konnektiv som förr (¬,∧,v,→,↔) 32 Bill Gates är rik Alltså finns det någon som är rik 33 Rik(billgates) → ∃xRik(x) 34 ∀x(Människa(x) → Dödlig(x)) Människa(sokrates) Alltså Dödlig(sokrates). 35 Hantera mängder, relationer, funktioner... Inför termer, formler 36 Termer Vad är termer? • Variabler Tänk x,y,z... • Konstanter Tänk 1,2,3,... • f(t1,...,tn), om f är en funktion som tar n argument, och alla ti är termer. Tänk addera(1, addera(2, 0)),... 37 Atomära formler ”Ersätter” satssymboler. Detta är atomära formler • Q, där Q är en atomära sats • P(t1,...,tn) är en atomär formel. P predikat som tar n argument, alla ti termer. Tänk ÄrUdda(0), ÄrUdda(addera(1,2)),... • t=u t och u termer. Tänk 1 = addera(1,52)... 38 Formler Detta är formler • Alla atomära formler • Formler som byggs upp med hjälp av konnektiven (¬,∧,v,→,↔) • ∀x ∀ φ, ∃xφ ∃ där φ är en formel 39 Not om Bennet Bennet talar om L-termer, L-formler... • L – lexikon/alfabet där vi hämtar alla konstantsymboler, funktionssymboler. • Lite mer begränsat och stiliserat språk. • Funktionssymboler f53, där 3 betyder ”3 argument” (treställig, aritet 3) 1f 40 Predikatlogik FORMALISERING [II] 41 Steg (i predikatlogik) 1. Identifiera utsagor som kan vara sanna/falska. Det vill säga atomära formler. Fundera på egenskaper saker i världen kan ha. Ersätt med predikat och termer. 2. Identifiera satsernas relationer och ersätt med konnektiv och kvantifierare. 42 Mönster: Alla P är Q Formalisera ”Alla katter är snälla” 1. Egenskaper: att vara katt, att vara snäll. Blir predikat. tesco är katt blir Katt(tesco) 2. om x är Katt så är x Snäll. Implikation. 1. Oavsett vad x är, om Katt(x) så Snäll(x) ∀x(Katt(x) → Snäll(x)) 43 Mönster: Några P är Q Formalisera ”Några pirater är snälla” 1. Egenskaper: att vara pirat, att vara snäll. Blir predikat. Guybrush är pirat blir Pirat(guybrush) 2. Några, så ”det finns exempel på”. 1. Det finns exempel på pirater som är snälla. 2. Det finns x som är både Pirat och Snäll. ∃x(Pirat(x) ∧ Snäll(x)) 44 Antal Formalisera ”Det finns exakt en spökpirat.” • ∃xSpökpirat(x)? Minst en, kanske flera. • Omformulering: 1. 2. • Det finns minst en spökpirat. ...och om någon är en spökpirat, så är den just denna. Användning av vanliga regler på detta: 1. 2. Egenskapen ”är spökpirat” blir predikatet Spökpirat(t) Det finns en spökpirat , och alla som har egenskapen att vara Spökpirat, är just denna x. ∃x[Spökpirat(x) ∧ ∀y(Spökpirat(y) → y = x)] 45 www.liu.se