föreläsning 4-5

40
Föreläsning 4-5 Logik med tillämpningar 97-11-11

Upload: brooke-gentry

Post on 01-Jan-2016

51 views

Category:

Documents


0 download

DESCRIPTION

Föreläsning 4-5. Logik med tillämpningar 97-11-11. Innehåll. Deduktiva system Gentzensystem Hilbertsystem Resolution Kapitel 2.7 - 2.10 i Ben-Ari Efter dagens föreläsning kan hela laboration 1 lösas. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Föreläsning 4-5

Föreläsning 4-5

Logik med tillämpningar

97-11-11

Page 2: Föreläsning 4-5

F4-5

Innehåll Deduktiva system

– Gentzensystem– Hilbertsystem

Resolution Kapitel 2.7 - 2.10 i Ben-Ari Efter dagens föreläsning kan hela laboration 1

lösas.

Page 3: Föreläsning 4-5

F4-5

Semantiska tablåer kontrollerar en given formels satisfierbarhet. Den ”uppfinner” inga nya formler och utnyttjar inte några antaganden.

En teoretiker har som uppgift att hitta på en mängd intressanta axiom, från vilka han/hon sedan kan härleda teorem.

I våra termer härleder teoretikern element ur T(U) för att hitta logiska konsekvenser av axiomen U. Definition (2.5.14)Låt T(U) = {A | U A}. T(U) kallas teorin av U och elementen i T(U) kallas teoremen av U. Elementen i U kallas axiomen av T(U).Teorem (2.5.11) Vi har visat att A T(U) omm (A1 ... An) A är valid där U = {A1, ..., An}.

Page 4: Föreläsning 4-5

F4-5

Problem:

Mängden axiom behöver inte vara ändlig. Inte alla logiska system har beslutsprocedurer

för validitet som satslogiken. En algoritm för validitet ger liten insikt i

strukturen av beviset. Vi har svårt att använda strukturen i ett bevis

för att göra ett nytt bevis för en liknande formel.

Page 5: Föreläsning 4-5

F4-5

Deduktiva bevis

Välj – en mängd axiom och– en mängd regler för hur man får dra slutsaster

Slutsatser som man drar bildar teorem och beskrivningen av hur man nått teoremet kallas beviset för teoremet.

Page 6: Föreläsning 4-5

F4-5

Skillnaden mellan semantiska och deduktiva system:

Semantiska system kräver inte att vi är smarta, bevisen är mekaniska.

Deduktiva system kräver att vi planerar vårt bevis, och att vi har viss erfarenhet. De är sämre för datorer.

Page 7: Föreläsning 4-5

F4-5

Hilbert och Gentzen

Hilbert-system – har flera axiom men bara en regel.– formaliserar klassiska metoder för matematiskt resonerande

Gentzen-system – har ett axiom men många regler.– är lättare än Hilbert-system att mekanisera

1909-1945Blev Hilberts assistent 1934

Dog av undernäring i ryskt fångenskap

1862-1943 ”Wir müssen wissen, wir werden wissen.”

- Vi måste veta, vi ska veta.

Page 8: Föreläsning 4-5

F4-5

Gentzensystem

Brukar betecknas G och kallas även naturlig deduktion.

Använder mängder av formler, precis som de semantiska tablåerna.

Page 9: Föreläsning 4-5

F4-5

Definition (2.8.1)

Systemet G består av axiom och inferensregler. Ett axiom i G är en mängd formler U innehållande ett kompletterande par av literaler. Inferensreglerna har formen

och

U ,

U1 1 2

1

U U

U U

1 1 2 2

1 2

Premisser

Slutsatser

Page 10: Föreläsning 4-5

F4-5

1

2

A AA1 A2 A1 A2

(A1 A2) A1A2

A1 A2A1 A2

A1 A2 A1 A2(A1 A2) (A1

A2) (A2 A1)

1

2

B1 B2 B1 B2

(B1 B2) B1B2

(B1 B2) B1 B2(B1 B2) B1 B2

B1 B2 B1 B2 B2

B1

Page 11: Föreläsning 4-5

F4-5

Bevis och bevisbarhet

Definition (2.8.2)

Ett bevis i G är en sekvens av formelmängder så att varje element antingen är ett axiom eller kan härledas från en eller två tidigare element i sekvensen med hjälp av en inferensregel. Om A är sista elementet i en sådan sekvens, så kallas sekvensen för ett bevis av A, och A är bevisbar. Notation: A.

Page 12: Föreläsning 4-5

F4-5((p q) (p q))

((p q) (p q)) ((p q) (p q))

p q, (p q) p q, (p q)

p, (p q) q, (p q) p, (p q) q, (p q)

p, p, q q, p, q p, p, q q, p, q X X X X

q, p , q p, p, q q, p , q p, p, q

q, (p q) p, (p q) q, (p q) p, (p q)

(p q), (p q) (p q), (p q)

(p q) (p q) (p q) (p q)

(p q) (p q)

Semantisk tablå för negationen

Gentzens deduktion i trädformGentzensystemet producerar träd som i princip är semantiska tablåer upp och ner med omvända tecken.

Page 13: Föreläsning 4-5

F4-5

Är systemet korrekt?

För att visa validitet med semantiska tablåer var vi tvungna att negera formeln och visa att den inte är satisfierbar.

Gentzensystemet gör precis detta, fast bakvägen. Vi kan därför lätt visa att Gentzensystemet är

sunt och fullständigt med hjälp av resultaten från semantiska tablåerna.

Page 14: Föreläsning 4-5

F4-5

Teorem (2.8.5) (bevisas i boken) Låt U vara en mängd formler och låt U' vara

mängden av komplementen till formlerna i U. Det finns ett bevis för U i G om det finns en stängd semantisk tablå för U'.

Specialfall: Det finns ett bevis för A i G omm den semantiska tablån för A är stängd.

Page 15: Föreläsning 4-5

F4-5

Sundhet och fullständighet för G

Teorem (2.8.6)

En formel A är valid omm A är bevisbar i G.

Bevis:

A är valid omm A är osatisfierbar omm den semantiska tablån för A är stängd omm det finns ett bevis för A i G.

Page 16: Föreläsning 4-5

F4-5Hilbertsystem

Hilbertsystemet har tre axiom och en inferensregel Axiomen definierar en oändlig mängd axiom, eftersom

A, B och C representerar godtyckliga formler.

Definition (2.9.1)

För godtyckliga formler A, B och C så är följande

formler axiom i H:

(A (B A))

((A (B C)) ((A B) (A C))

(B A) (A B)

Page 17: Föreläsning 4-5

F4-5

Inferensregeln

Definition (2.9.2)

För godtyckliga formler A och B så är

inferensregeln i H. Denna regel kallas för modus ponens eller MP.

A A B

B

Page 18: Föreläsning 4-5

F4-5

Härledda inferensregler

Vi kan utöka Hilbertsystem med s k härledda inferensregler. Vi kan då använda dessa regler precis som vi använder modus ponens.

Vi måste kunna visa att den nya regeln är sund. Detta görs genom att visa hur ett bevis som

använder den nya regeln kan transformeras till ett nytt bevis som bara använder MP.

Page 19: Föreläsning 4-5

F4-5

Antaganden (assumptions)

Definition (2.9.4)

Låt U vara en mängd formler och A en formel.

Notationen U A betyder att formlerna i U är antaganden i beviset av A, dvs, de kan användas precis som axiomen i bevisföringen.

Page 20: Föreläsning 4-5

F4-5

Deduktionsregeln

U {A} B

U A B

Page 21: Föreläsning 4-5

F4-5

Kontrapositiva regeln B A

A B

Bevis1. B A Antagande

2. (B A) (A B) Axiom 3

3. A B MP 1, 2

Page 22: Föreläsning 4-5

F4-5

Tranisitivitets regeln

U A B

U A C

U B C

Detta teorem visar att det är OK att visa ett teoremmed hjälp av en serie lemman.

Page 23: Föreläsning 4-5

F4-5

Byte av antecedenter

U A (B C)

U B (A C)

Det spelar ingen roll i vilken ordning man gör sinaantaganden.

Page 24: Föreläsning 4-5

F4-5

Dubbla negeringsregeln

A

A Vanligt resonemang i matematik.

– Om inte x y så är x = y

Kan vara lurigt att använda i dagligt tal…– ”Det är inte sant att jag inte är glad” behöver inte vara

samma sak som ”Jag är glad”.

Page 25: Föreläsning 4-5

F4-5

Är Hilbertsystemet korrekt?

Sundhet: Om A så gäller att A.Dvs om A är bevisbar så ska A vara valid.

– Visas genom att visa att axiomen är valida (med semantiska tablåer) och sedan göra ett motbevis. Vi antar att Modus Ponens inte är valid och når en motsägelse.

Fullständighet: Om A så gäller att A.Dvs om A är valid så ska A vara bevisbar.

– Utnyttjar att vi bevisat fullständighet hos Gentzen-system och visar hur ett bevis i G transformeras till ett i H.

Page 26: Föreläsning 4-5

F4-5

Exempel

p q q p (p q) (q p)

p (p q) p (p (p q)) p (p (p q)) p

Page 27: Föreläsning 4-5

F4-5

Resolution

Resolution lämpar sig ypperligt för att implementera automatisk bevissökning på dator.

Resolution är förhållandevis effektivt.

Resolution bildar den teoretiska basen för logikprogrammering.

Page 28: Föreläsning 4-5

F4-5CNF

Definition (2.10.1)

En formel är i konjunktiv normalform (CNF) om den är en konjunktion av disjunktioner av literaler.

(p q) (r) (p)

(p q) ((p q) r) (p)

(p q) (r p)

Teorem (2.10.2)

Alla satslogiska formler kan omvandlas till konjunktiv normalform.

Page 29: Föreläsning 4-5

F4-5

Klausul, klausulform, enhetsklausul

Klausul = mängd med literaler Formel = mängd med klausuler Man säger att en formel enligt ovan är i

klausulform Enhetsklausul = en klausul med endast en literal En formel i klausulform är satisfierbar omm

motsvarande CNF-formel är satisfierbar.

Page 30: Föreläsning 4-5

F4-5

Förkortad skrivform

Formler i klausulform tex:

(p q r) (q r) (r)

skrivs som

Notera att negation markeras med ett strecköver symbolen.

pqr qr r, ,

Page 31: Föreläsning 4-5

F4-5

Transformationer av formler

Definition (2.10.4)

Låt S och S' vara klausulmängder. S S' betyder att S är satisfierbar omm S' är satisfierbar.

Vi kommer att titta på flera lemman där man kan transformera formlerna till en ny mängd utan att förändra satisfierbarheten.

Page 32: Föreläsning 4-5

F4-5

I följande lemman och teorem kommer S vara klausulmängder, C klausuler och l literaler. Om l är en literal, så är lc dess komplement.

Lemma (2.10.5) Antag att en literal l finns i S, men inte lc. Låt S' vara klausalmängden där alla klausuler som innehåller l tagits bort. Då gäller SS'.

Page 33: Föreläsning 4-5

F4-5

Lemma (2.10.6)Låt {l}S vara en enhetsklausul. S' fås från S genom att ta bort alla klausuler innehållande l och ta bort lc från alla klausuler i S. Då gäller SS'

Lemma (2.10.7) Om både l C och lc C för någon C S, låt S' = S - {C}. Då gäller S S'.

Page 34: Föreläsning 4-5

F4-5

Subsumering

Definition (2.10.8)Om C1 C2, så säger vi att C1 subsumerar C2, och C2 är subsumerad av C1.

Lemma 2.10.9Om C1, C2 S och C1 subsumerar C2, låt S' = S - {C2}. Då gäller S S', dvs den större klausulen kan tas bort.

Page 35: Föreläsning 4-5

F4-5

Tomma mängder av klausuler

Antag S = . S är uppenbart valid, dvs de möjliga interpretationerna v(p) = T och v(p) = F satisfierar båda S.

Enligt lemma (2.10.7) så kan vi ta bort alla klausuler som innehåller kompletterande literaler utan att påverka satisfierbarheten. S' = {} = , dvs tomma mängden.

En tom klausulmängd är alltså satisfierbar.

pp

Page 36: Föreläsning 4-5

F4-5

Tomma klausuler Antag S = {p, }. S är ekvivalent med p p, en

formel som är uppenbart osatisfierbar. Enligt lemma (2.10.6) kan vi ta bort en enhets-

klausul och samtidigt ta bort alla komplement till literalen ur kvarvarande klausuler i S utan att påverka satisfierbarheten. Vi får då S' = {}, där står för den tomma klausulen.

En klausulmängd innehållande en tom klausul är alltså inte satisfierbar.

p

Page 37: Föreläsning 4-5

F4-5

Resolutionsregeln Låt C1 och C2 vara klausuler så att lC1 och lcC2.

C1 och C2 är då kolliderande (clashing) klausuler och de kolliderar på de kompletterande literalerna l och lc.

Klausulen C = Res(C1, C2) = (C1 - (l}) (C2 - (lc }) kallas för resolventen av C1 och C2.

C1 och C2 är föräldraklausuler till C.

Page 38: Föreläsning 4-5

F4-5

Teorem (2.10.12)Resolventen C är satisfierbar omm föräldra-klausulerna C1 och C2 är (ömsesidigt) satsifierbara.

Är resolventen satisfierbar??

Page 39: Föreläsning 4-5

F4-5

Resolutionsproceduren Låt S vara en mängd klausuler och definiera S0 = S.

Antag att vi har konstruerat Si. Välj två kolliderande klausuler C1, C2 Si, och låt C vara resolventen Res(C1, C2).

Om C = kan proceduren avbrytas, eftersom S då är osatsifierbar.

Annars konstruera Si+1 = Si {C}. Om Si+1 = Si för alla möjliga kollisioner, avbryts proceduren, S är satisifierbar.

Page 40: Föreläsning 4-5

F4-5

Resolution är inte en beslutsprocedur för validitet, utan för satisiferbarhet. Som vi vet sedan tidigare är detta inte ett problem.

För att avgöra om formeln A är valid, så kontrollerar vi om A är satisfierbar. Om A inte är satisfierbar, så är A valid.

Resolution är alltså en refuteringsprocedur.

Det normala användningssättet för resolution är att använda det för teorembevisning.