Objektorienterad modellering och diskreta strukturer 8. Naturlig härledning och predikatlogik Sven Gestegård Robertz Datavetenskap, LTH 2013
Outline 1 Inledning 2 Inferensregler 3 Predikatlogik 8. Naturlig härledning och predikatlogik 2/48
1 Inledning 2 Inferensregler 3 Predikatlogik Inledning Substitution Härledningsregler Inledning 8. Naturlig härledning och predikatlogik 3/48
Rekapitulation Modellering med satslogik Operatorer kontra relationer (t ex, ; <) Tautologier och räknelagar Naturlig härledning med inferensregler för Implikationsoperatorn och dess sanningstabell Precedens för operatorer Inledning 8. Naturlig härledning och predikatlogik 4/48
Implikationsoperatorn Denition P Q P Q T T T F T T F F T T F F (P Q) (P Q) P Q Den sista enligt de Morgans lag Inledning 8. Naturlig härledning och predikatlogik 5/48
Operatorprecedens 1. icke, 2. och 3. eller 4. om... så, implicerar 5. ekvivalent Inledning 8. Naturlig härledning och predikatlogik 6/48
Associativitet 3 + 2 + 1 = (3 + 2) + 1 = 3 + (2 + 1) Men är exempel på en vänsterassociativ operator 3 2 1 = (3 2) 1 och a b är högerassociativ 2 32 = 2 (32) = 512 Inledning 8. Naturlig härledning och predikatlogik 7/48
Associativitet Associativitet är en konvention för att kunna utelämna parenteser För vissa operatorer (t ex ) nns ingen vedertagen konvention och man måste sätta ut parenteser Inledning 8. Naturlig härledning och predikatlogik 8/48
1 Inledning 2 Inferensregler 3 Predikatlogik Inledning Substitution Härledningsregler Inferensregler 8. Naturlig härledning och predikatlogik 9/48
Inferensregler för P Q [ E1 ] P P Q [ E2 ] Q P Q [ I ] P Q Ett bevisträd: p q [ E2 ] q q p p q [ E1 ] p [ I ] Sekvent {p q} q p Inferensregler 8. Naturlig härledning och predikatlogik 10/48
Regler för [P ] Q [ I ] P Q P P Q [ E ] Q Inferensregler 8. Naturlig härledning och predikatlogik 11/48
Inferensregler för P Q [P ] R R [Q] R [ E ] P [ I1 ] P Q Q [ I2 ] P Q Inferensregler 8. Naturlig härledning och predikatlogik 12/48
Introduktionsregel för [P ] R P [P ] R [ I ] Inferensregler 8. Naturlig härledning och predikatlogik 13/48
Eliminationsregler för P [ E ] P Inferensregler 8. Naturlig härledning och predikatlogik 14/48
Huvudsats för inferensreglerna Sats P är en tautologi omm P går att härleda utan några premisser. = P P Inferensregler 8. Naturlig härledning och predikatlogik 15/48
Aktivitet Indikera vilken regel som använts i varje nod. [p] [ I] p p p [ (p p)] [ I] [ p] [ I] p p [ (p p)] [ I] p [ E] p [ I] (p p) [ E] p p Inferensregler 8. Naturlig härledning och predikatlogik 16/48
Samma härledning i annan notation Visa att = p p. 1 (p p) 2 p 3 p p I, 2 4 F I, 1, 3 5 p I (RAA), 24 6 p 7 p p I, 6 8 F I, 1, 7 9 p I (RAA), 68 10 p E, 9 11 F I, 5, 10 12 (p p) I (RAA), 111 13 p p E, 12 Inferensregler 8. Naturlig härledning och predikatlogik 17/48
Härledda regler Exempel (Modus Tollens, kontrapositiva lagen) Om studenten skriver godkänt på tentan så blir studenten godkänd på kursen. Studenten blev inte godkänd på kursen. Alltså skrev studenten inte godkänt på tentan. Exempel (Modus Tollendo Ponens, disjunktiv syllogism) Jag är på kontoret eller i karummet. Jag är inte på kontoret. Alltså är jag i karummet. Exempel (Modus Ponendo Tollens, konjunktiv syllogism) Man kan inte vara gift och ungkarl samtidigt. Jag är gift. Alltså är jag inte ungkarl. Inferensregler 8. Naturlig härledning och predikatlogik 18/48
Härledda regler Sats (Modus Tollens) {P Q, Q} P Bevis [P ] P Q Q [ E ] P Q [ I] Detta kallas ibland lagen om kontraposition: {P Q} ( Q P ) Inferensregler 8. Naturlig härledning och predikatlogik 19/48
Härledda regler Sats (Modus Ponendo Tollens, konjunktiv syllogism) Bevis (skiss) { (P Q), P } Q Motsägelsebevis; antag Q, och I ger motsägelse Sats (Modus Tollendo Ponens, disjunktiv syllogism) Bevis (skiss) {P Q, P } Q Gör sanningstabell för (P Q) ( P Q). Härledning lite mer komplicerad. T ex, visa { P } P Q och använd detta tillsammans med E och E, eller motsägelsebevis och E. Inferensregler 8. Naturlig härledning och predikatlogik 20/48
Sammanfattning E P Q P I {P, Q} P Q E {P Q, P R, Q R} R I P P Q E {(P Q), P } Q MP I {P Q} (P Q ) Hypotetisk härledning I (P F) P Indirekt härledning, RAA E P P Dubbel negation MT {P Q, Q} P MTP {P Q, Q} P MPT { (P Q), P } Q Inferensregler 8. Naturlig härledning och predikatlogik 21/48
1 Inledning 2 Inferensregler 3 Predikatlogik Inledning Substitution Härledningsregler Predikatlogik 8. Naturlig härledning och predikatlogik 22/48
Satslogikens begränsning Exempel: slutsatserna 1 Allting är förgängligt Jorden är förgänglig 2 Sokrates är en modig losof Det nns modiga losofer kan inte bevisas satslogiskt, eftersom subjektet i slutsatsen inte är detsamma som subjektet i premissen. Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 23/48
Predikatlogik ( x. P (x)) för alla x gäller P (x) ( x. P (x)) det nns något x så att P (x) eller, om det inte framgår av sammanhanget vilka värden x kan anta ( x S. P (x)) för alla x i mängden S gäller P (x) ( x S. P (x)) det nns något x S så att P (x) Kvantorer:, Predikat: P (x), Q(x, y) Termer: f(x), g(0, y), f(g(x, T)) Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 24/48
Euklides, 300 f. Kr. Sats n. p. prime(p) p > n Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 25/48
Aktivitet Skriv ett uttryck som säger att 1 heltalet i är jämt. Använd, och = men inte divisions- eller restoperator. Svar n Z. i = 2n 2 för alla heltal så är kvadraten på talet är större än eller lika med talet. Svar n Z. n 2 n Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 26/48
Aktivitet Ibland måste man själv inse att det behövs kvantorer. Skriv ett uttryck som säger att summan av två heltal är alltid densamma oberoende av i vilken ordning operanderna tages. Svar n. m. n + m = m + n Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 27/48
Exempel Låt x och y vara vektorer. Vad betyder i. x i x i+1 i. j. i = j x i x j i. j. i j x i < x j i. x i = y i Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 28/48
Aktivitet Låt x och y vara vektorer med lika många element. Formulera med predikatlogik 1 Alla värden som nns i x nns också i y. i. j. x i = y j 2 Varje element i x är mindre än motsvarande element i y. i. x i < y i 3 Alla element i x är mindre än varje element i y. i. j. x i < y j 4 Det minsta elementet i x är större än det största elementet i y. i. j. x i > y j Predikatlogik : Inledning 8. Naturlig härledning och predikatlogik 29/48
Fria och bundna variabler prime(p) p > n p. prime(p) p > n ( p. prime(p)) p > n n. p. prime(p) p > n Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 30/48
Bundna variabler Denition Förekomsten av en variabel v i ett uttryck F är bunden om F innehåller ett uttryck på formen v. G eller v. G och förekomsten av v nns i denna form. En förekomst av en variabel som inte är bunden säges vara fri. Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 31/48
Aktivitet Markera fria förekomster av variabler i ( n. n > 0) (n = 0) Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 32/48
Substitution om e och t är uttryck och x är en variabel så är e[x\t] det uttryck man får när man i e ersätter alla fria förekomster av x med t Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 33/48
Substitution i aritmetiska uttryck Om n är en numerisk literal n[x\t] n Om ett uttryck bara består av en variabel, v, har vi två fall v[x\t] t om v och x är samma variabel (d v s x[x\t] t) v[x\t] v om v och x är olika variabler Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 34/48
Substitution i sammansatta aritmetiska uttryck De återstående fallen handlar om sammansatta uttryck. (e 1 + e 2 )[x\t] (e 1 [x\t] + e 2 [x\t]) (e 1 e 2 )[x\t] (e 1 [x\t] e 2 [x\t]) (e 1 e 2 )[x\t] (e 1 [x\t] e 2 [x\t]) (e 1 /e 2 )[x\t] (e 1 [x\t]/e 2 [x\t]) Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 35/48
Aktivitet Högerleden i de fyra sista denitionerna av substitution tillåter två tolkningar beträande hur mycket som skall utsättas för den sista substitutionen. Sätt ut parenteser så att det inte råder någon tvekan i (e 1 [x\t] + e 2 [x\t]) Vilken precedens skall substitutionsoperatorn ha relativt de aritmetiska operatorerna för att man skall kunna utelämna parenteserna i högerledet? Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 36/48
Aktivitet Utför substitutionerna (x x)[x\x + 1] = (x + 1) (x + 1) (y x)[x\y + 1] = (y (y + 1)) (x x)[x\x + 1][x\x + 1] = (((x + 1) + 1) ((x + 1) + 1)) Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 37/48
Stora och n P i P 1 P n = i {1,..., n}. P i i=1 n P i P 1 P n = i {1,..., n}. P i i=1 har samma relationer som till + Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 38/48
Substitution i kvantieringar Tre fall: 1. om v och x är samma variabel ( v. P )[x\t] ( v. P ) 2. om v och x är olika variabler och v inte är fri i t ( v. P )[x\t] ( v. P [x\t]) Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 39/48
Substitution med namnkollision 3. I det återstående fallet, när v förekommer som fri variabel i t måste man byta namn på kvantieringsvariabeln till ett nytt namn, z, som inte förekommer i P innan man kan substituera in t. ( v. P )[x\t] ( z. ((P [v\z])[x\t])) Predikatlogik : Substitution 8. Naturlig härledning och predikatlogik 40/48
Inferensregler i predikatlogik Reglerna från satslogiken gäller (men se upp med kvantorer) I, E I, E de Morgans lagar behöver utökas Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 41/48
Inferensregler, exempel Alla människor är dödliga. Jag är människa. Alltså är jag dödlig. ( E ) Låt t vara en triangel. Det går att bevisa att t har vinkelsumman 180. Alltså har alla trianglar vinkelsumman 180. ( I ) Jag har sett en vit dovhjort. Alltså nns det vita dovhjortar. ( I ) Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 42/48
Inferensregler för. x. P [ E ] P [x\t] där t inte får förekomma som bunden variabel i P. b. a. P (a, b) (T ex gäller inte [ E]. Motexempel: P (a, b) a > b.) a. P (a, a) P (t) [ I ] x. P (x) om P (t) kan härledas utan något (oupphävt) antagande om t, och x inte ingår (som fri variabel) i P (t). Annars skulle P (x) x. P (x), vilket det inte gör. Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 43/48
Inferensregler för. P (c) [ I ] x. P (x) där x inte får förekomma som fri variabel i P (c) x. P (x) Q [P (a)] Q [ E ] där a är en ny variabel, som bara förekommer i härledningen av Q. E kan förstås som vi vet att det nns värden på x, för vilka P (x) är sant. Antag att variabeln a har ett sådant värde, och att det ger Q. Då kan vi säga att Q gäller, utan att behöva känna värdet a. Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 44/48
Räknelagar (urval) Det gäller att x. P (x) Q(x) x. y. P (x, y) och ( x. P (x)) ( x. Q(x)) y. x. P (x, y) ( x. P (x)) ( x. Q(x)) x. ( P (x) Q(x)) men inte omvändningen x. ( P (x) Q(x) ) ( x. P (x)) ( x. Q(x)) ty med P (x): x är man och Q(x): x är kvinna, så skulle då satsen För alla människor x gäller: x är man eller x är kvinna vara ekvivalent med det betydligt starkare påståendet att alla människor är män eller alla människor är kvinnor. Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 45/48
de Morgans lagar För predikatlogiska uttryck gäller Denial of universality ( x. P (x)) = x. P (x) Denial of existence ( x. P (x)) = x. P (x) och omvändningarna Assertion of universality x. P (x) = ( x. P (x)) Assertion of existence ( x. P (x)) = x. P (x) Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 46/48
Exempel: Modus Ponens ( E ) x S. P (x) Q(x) Q(a) P (a), a S E Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 47/48
Se upp med Det nns däggdjur som kan yga, med D(x): x är ett däggdjur F (x): x kan yga skrivs x. D(x) F (x) och inte x. D(x) F (x) Predikatlogik : Härledningsregler 8. Naturlig härledning och predikatlogik 48/48