F rel sning 4 5
Sponsored Links
This presentation is the property of its rightful owner.
1 / 40

Föreläsning 4-5 PowerPoint PPT Presentation


  • 133 Views
  • Uploaded on
  • Presentation posted in: General

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.

Download Presentation

Föreläsning 4-5

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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.


  • 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}.


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.


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.


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.


1862-1943

”Wir müssen wissen, wir werden wissen.”

- Vi måste veta, vi ska veta.

1909-1945Blev Hilberts assistent 1934

Dog av undernäring i ryskt fångenskap

Hilbert och Gentzen

  • Hilbert-system

    • har flera axiom men bara en regel.

    • formaliserar klassiska metoder för matematiskt resonerande

  • Gentzen-system

    • har ettaxiom men många regler.

    • är lättare än Hilbert-system att mekanisera


Gentzensystem

  • Brukar betecknas G och kallas även naturlig deduktion.

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


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

Premisser

Slutsatser


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.


((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ädform

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


Ä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.


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.


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.


Hilbertsystem

  • 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)


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.


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.


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.


Deduktionsregeln


Kontrapositiva regeln


Tranisitivitets regeln

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


Byte av antecedenter

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


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”.

Dubbla negeringsregeln


Ä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.


Exempel

  • p  q  q  p  (p  q)  (q  p)

  • p  (p  q)  p  (p  (p  q))  p  (p  (p  q))  p


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.


CNF

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.


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.


Förkortad skrivform

Formler i klausulform tex:

(p  q  r)  (q  r)  (r)

skrivs som

Notera att negation markeras med ett strecköver symbolen.


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.


  • 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 SS'.


  • 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 SS'

  • 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'.


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.


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.


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.


Resolutionsregeln

  • Låt C1 och C2 vara klausuler så att lC1 och lcC2.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.


Är resolventen satisfierbar??

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


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.


  • 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.


  • Login