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

Slides:



Advertisements
Liknande presentationer
Introduktion till dagens övning
Advertisements

F. Drewes, Inst. f. datavetenskap1 Föreläsning 13: Resolution •Resolution i satslogiken •Resolution i predikatlogiken.
Föreläsning 3 25 jan 2010.
PowerPoint av Bendik S. Søvegjarto Koncept, text och regler av Skage Hansen.
Talföljder formler och summor
X-mas algebra Är du redo? Klicka!!.
Deduktion och induktion ”Välgrundade” vetenskapliga (slut)satser förutsätter giltiga eller åtminstone trovärdiga slutledningar.
F3 Matematikrep Summatecknet Potensräkning Logaritmer Kombinatorik.
Point Estimation Dan Hedlin
hej och välkomna EKVATIONER Ta reda på det okända talet.
Enkel dator teknik Tips och tricks.
1 Logikprogrammering ons 11/9 David Hjelm. 2 Repetition Listor är sammansatta termer. De består av en ordnad mängd element. Elementen i en lista kan vara.
Prolog, Mån 16/9 Rebecca Jonson.
Logikprogrammering, Mån 23/9 Rebecca Jonson. Repetition P :- Q, R. Deklarativ syn: –P är sann om Q och R är sanna. –Av Q och R följer P Procedurell syn:
DAB752: Algoritmteori Leif Grönqvist
Logikprogrammering Ons, 25/9
Datastrukturer och algoritmer Föreläsning 11. Datastrukturer och algoritmer VT08 Innehåll  Mängd  Lexikon  Heap  Kapitel , , 14.4.
Predicting protein folding pathways.  Mohammed J. Zaki, Vinay Nadimpally, Deb Bardhan and Chris Bystroff  Artikel i Bioinformatics 2004.
Växjö 21 april -04Språk & logik: Kontextfria grammatiker1 DAB760: Språk och logik 21/4: Kontextfria 10-12grammatiker Leif Grönqvist
732G22 Grunder i statistisk metodik
Växjö 15 april -04Språk & logik: Reguljära uttryck1 DAB760: Språk och logik 15/4: Finita automater och 13-15reguljära uttryck Leif Grönqvist
Etiska resonemangsmodeller
Logikprogrammering och Prolog
Föreläsning 4 Kö Implementerad med array Implementerad med länkad lista Djup kontra bredd Bredden först mha kö.
Formell logik Kapitel 1 och 2
Kunskap 2 Egna upplevelser
Felkalkyl Ofta mäter man inte direkt den storhet som är den intressanta, utan en grundläggande variabel som sedan används för att beräkna det som man är.
Logikkurs 1.
Lennart Edblom, Frank Drewes, Inst. f. datavetenskap 1 Föreläsning 6: Semantik Statisk semantik Attributgrammatiker Dynamisk semantik Axiomatisk.
Semantik – introduktion
PROCESSPROGRAMMERING Föreläsning ‏ Innehåll: Högnivå objekt för trådprogrammering: - Trådgrupper (”Thread pools”)‏ - Exekverare (Executor.
Algoritmer. Ordet kommer från en persisk författare som kom från al’Khowârizmi (engelskans algorithm). Han skrev boken ’Kitab al jabr w’al-muqabala’.
Det finns i V en operation kallad addition, betecknad + sådan att
F. Drewes, Inst. f. datavetenskap1 Föreläsning 11: Funktionella språk Funktioner och variabler i matematiken Funktionella språk LISP, ML och.
Logikprogrammering 21/10 Binära träd
Föreläsning 6 Logik med tillämpningar F6 Innehåll u Resten om resolution u Varför så många olika beslutsprocedurer? u Teorembevisaren Otter.
Formell logik Kapitel 9 Robin Stenwall Lunds universitet.
Logik med tillämpningar
Initiera nätverket med nollflöde. Kapaciteterna i svart ovan bågarna och flödet i grönt nedan bågarna. Skicka igenom ett enhetsflöde genom nätverket. Flödesvägen.
Föreläsning 7 Fysikexperiment 5p Poissonfördelningen Poissonfördelningen är en sannolikhetsfördelning för diskreta variabler som är mycket.
© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Föreläsning 12 Sökning och Sökträd.
Föreläsning 11 Logik med tillämpningar Innehåll u Generell resolution u Kapitel i Ben-Ari.
Föreläsning 9 Logik med tillämpningar Innehåll u Semantiska tablåer i predikatlogiken u Klausulform u Herbrandmodeller u Kapitel 3.5,
Föreläsning 13 Logik med tillämpningar Innehåll u Aritmetik i Prolog u Rekursiva och iterativa program u Typpredikat u Metalogiska predikat.
Föreläsning 15 Logik med tillämpningar Innehåll u Programmeringsstil i Prolog u Expertsystem u Att kunna inför tentan u Kapitel 13 och 14.3.
Lennart Edblom, Frank Drewes, Inst. f. datavetenskap 1 Föreläsning 12: -kalkylen allmänt om -kalkylen syntax semantik att programmera i -kalkylen.
Satslogik, forts. DAA701/716 Leif Grönqvist 5:e mars, 2003.
Föreläsning 16 Logik med tillämpningar Innehåll u Information kring kursvärdering och tentagenomgång u Genomgång av övningstenta 2.
 x(p(x)  q(x))  (  x p(x)   xq(x))  x(p(x)  q(x))  xp(x)   xq(x)  x(p(x)  q(x)),  (p(a)  q(a))  xp(x),  xq(x)  x (p(x)  q(x)), 
Logik med tillämpningar
1 Semantik – introduktion Semantik = läran om mening Tvärvetenskapligt filosofi lingvistik psykologi AI Lingvistik motsägelser mångtydighet metaforer Filosofi.
Pontus Johansson 1 grammatiker 21.1 G 1 (BBS 7)
Föreläsning 14 Logik med tillämpningar Innehåll u Cuts och negation u Input/output u Extralogiska predikat u Interaktiva program, failure-drivna.
F. Drewes, Inst. f. datavetenskap1 Föreläsning 12: -kalkylen allmänt om -kalkylen syntax semantik att programmera i -kalkylen.
Procedurellt potpurri Dagens samtalsämnen –Klipp (Cut) –If-then-else –fail/0 –repeat/0 Att läsa –The Art of Prolog, kapitel 11 –Relevant avsnitt i Learn.
© Anders Broberg, Lena Kallin Westin, 2007 Datastrukturer och algoritmer Föreläsning 14.
Förra föreläsningen: Historisk utveckling av elektromagnetismen Vektorer Koordinatsystem.
Kronljusströmställaren 0, 1, 2, 3
Föreläsning 1-2 Logik med tillämpningar
Växjö 14 april -04Språk & logik: Finita automater1 DAB760: Språk och logik 14/4:Finita automater Leif Grönqvist Växjö Universitet.
Lennart Edblom, Frank Drewes, Inst. f. datavetenskap 1 Föreläsning 13: Resolution Resolution i satslogiken Resolution i predikatlogiken.
Big bang ca 13,7 miljarder år sedan
Krav på vetenskaplig tolkning
Lars Madej  Talmönster och talföljder  Funktioner.
FTEA12:2 Filosofisk Metod Grundläggande argumentationsanalys II.
Några nedslag i geometrins historia
Formell logik Kapitel 5 och 6
Formell logik Kapitel 7 och 8
Filosofisk logik Kapitel 15
Anpassad för barn till den som drabbats av en hjärnskakning
Presentationens avskrift:

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

F4-5 Innehåll u Deduktiva system – Gentzensystem – Hilbertsystem u Resolution u Kapitel i Ben-Ari u Efter dagens föreläsning kan hela laboration 1 lösas.

F4-5 u Semantiska tablåer kontrollerar en given formels satisfierbarhet. Den ”uppfinner” inga nya formler och utnyttjar inte några antaganden. u 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}.

F4-5 Problem: u Mängden axiom behöver inte vara ändlig. u Inte alla logiska system har beslutsprocedurer för validitet som satslogiken. u En algoritm för validitet ger liten insikt i strukturen av beviset. u Vi har svårt att använda strukturen i ett bevis för att göra ett nytt bevis för en liknande formel.

F4-5 Deduktiva bevis u Välj –en mängd axiom och –en mängd regler för hur man får dra slutsaster u Slutsatser som man drar bildar teorem och beskrivningen av hur man nått teoremet kallas beviset för teoremet.

F4-5 Skillnaden mellan semantiska och deduktiva system: u Semantiska system kräver inte att vi är smarta, bevisen är mekaniska. u Deduktiva system kräver att vi planerar vårt bevis, och att vi har viss erfarenhet. De är sämre för datorer.

F4-5 Hilbert och Gentzen u Hilbert-system –har flera axiom men bara en regel. –formaliserar klassiska metoder för matematiskt resonerande u Gentzen-system –har ett axiom men många regler. –är lättare än Hilbert-system att mekanisera Blev Hilberts assistent 1934 Dog av undernäring i ryskt fångenskap ”Wir müssen wissen, wir werden wissen.” - Vi måste veta, vi ska veta.

F4-5 Gentzensystem u Brukar betecknas G och kallas även naturlig deduktion. u Använder mängder av formler, precis som de semantiska tablåerna.

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 Premisser Slutsatser

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.

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 X X X X  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.

F4-5 Är systemet korrekt? u För att visa validitet med semantiska tablåer var vi tvungna att negera formeln och visa att den inte är satisfierbar. u Gentzensystemet gör precis detta, fast bakvägen. u 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.

F4-5 Teorem (2.8.5) (bevisas i boken) u 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'. u Specialfall: Det finns ett bevis för A i G omm den semantiska tablån för  A är stängd.

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.

F4-5 Hilbertsystem u Hilbertsystemet har tre axiom och en inferensregel u 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)

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.

F4-5 Härledda inferensregler u 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. u Vi måste kunna visa att den nya regeln är sund. u 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.

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.

F4-5 Deduktionsregeln

F4-5 Kontrapositiva regeln

F4-5 Tranisitivitets regeln Detta teorem visar att det är OK att visa ett teorem med hjälp av en serie lemman.

F4-5 Byte av antecedenter Det spelar ingen roll i vilken ordning man gör sina antaganden.

F4-5 Dubbla negeringsregeln u Vanligt resonemang i matematik. – Om inte x  y så är x = y u 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”.

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.

F4-5 Exempel u p  q  q  p  (  p  q)  (  q  p) u p  (p  q)  p   (p   (p  q))  p   (p   (  p  q))  p

F4-5 Resolution u Resolution lämpar sig ypperligt för att implementera automatisk bevissökning på dator. u Resolution är förhållandevis effektivt. u Resolution bildar den teoretiska basen för logikprogrammering.

F4-5 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.

F4-5 Klausul, klausulform, enhetsklausul u Klausul = mängd med literaler u Formel = mängd med klausuler u Man säger att en formel enligt ovan är i klausulform u Enhetsklausul = en klausul med endast en literal u En formel i klausulform är satisfierbar omm motsvarande CNF-formel är satisfierbar.

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.

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.

F4-5 u I följande lemman och teorem kommer S vara klausulmängder, C klausuler och l literaler. Om l är en literal, så är l c dess komplement.  Lemma (2.10.5) Antag att en literal l finns i S, men inte l c. Låt S' vara klausalmängden där alla klausuler som innehåller l tagits bort. Då gäller S  S'.

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 l c från alla klausuler i S. Då gäller S  S'  Lemma (2.10.7) Om både l  C och l c  C för någon C  S, låt S' = S - {C}. Då gäller S  S'.

F4-5 Subsumering  Definition (2.10.8) Om C 1  C 2, så säger vi att C 1 subsumerar C 2, och C 2 är subsumerad av C 1.  Lemma Om C 1, C 2  S och C 1 subsumerar C 2, låt S' = S - {C 2 }. Då gäller S  S', dvs den större klausulen kan tas bort.

F4-5 Tomma mängder av klausuler u 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. u En tom klausulmängd är alltså satisfierbar.

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. u En klausulmängd innehållande en tom klausul är alltså inte satisfierbar.

F4-5 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. u Klausulen C = Res(C 1, C 2 ) = (C 1 - (l})  (C 2 - (l c }) kallas för resolventen av C 1 och C 2. u C 1 och C 2 är föräldraklausuler till C.

F4-5 u Teorem ( ) Resolventen C är satisfierbar omm föräldra- klausulerna C1 och C2 är (ömsesidigt) satsifierbara. Är resolventen satisfierbar??

F4-5 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, och låt C 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}. Om S i+1 = S i för alla möjliga kollisioner, avbryts proceduren, S är satisifierbar.

F4-5 u 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. u Resolution är alltså en refuteringsprocedur. u Det normala användningssättet för resolution är att använda det för teorembevisning.