Wprowadzenie do Sztucznej

Podobne dokumenty
Wprowadzenie do Sztucznej Inteligencji

Wprowadzenie do Sztucznej Inteligencji

Wprowadzenie do Sztucznej Inteligencji

Podstawy Sztucznej Inteligencji (PSZT)

Alfred N. Whitehead

Metoda Tablic Semantycznych

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Logika Matematyczna (10)

Adam Meissner.

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

III rok kognitywistyki UAM,

III rok kognitywistyki UAM,

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Interpretacja Niech U będzie zbiorem formuł takim, że zbiór {p 1,..., p k } jest zbiorem wszystkich symboli predykatywnych, {f 1,..., f l } jest zbior

Rachunek predykatów. Formuły rachunku predykatów. Plan wykładu. Relacje i predykaty - przykłady. Relacje i predykaty

Semantyka rachunku predykatów

Paradygmaty dowodzenia

1. Składnia. Logika obliczeniowa - zadania 1 SKŁADNIA Teoria

Myślenie w celu zdobycia wiedzy = poznawanie. Myślenie z udziałem rozumu = myślenie racjonalne. Myślenie racjonalne logiczne statystyczne

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

Adam Meissner STUCZNA INTELIGENCJA

Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia

Rezolucja w rachunku predykatów. Przedrostkowa koniunkcyjna postać normalna. Formu ly ustalone. Joanna Józefowska. Poznań, rok akademicki 2009/2010

Programowanie deklaratywne i logika obliczeniowa

JEZYKOZNAWSTWO. I NAUKI O INFORMACJI, ROK I Logika Matematyczna: egzamin pisemny 18 czerwca Imię i Nazwisko:... I

Składnia rachunku predykatów pierwszego rzędu

LOGIKA Dedukcja Naturalna

Modele Herbranda. Logika obliczeniowa. Joanna Józefowska. Szukamy modelu. Przykład Problemy. Model Herbranda

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW

Programowanie deklaratywne

Logika i teoria mnogości Wykład Sformalizowane teorie matematyczne

Gramatyki grafowe. Dla v V, ϕ(v) etykieta v. Klasa grafów nad Σ - G Σ.

Algebrę L = (L, Neg, Alt, Kon, Imp) nazywamy algebrą języka logiki zdań. Jest to algebra o typie

Drzewa Semantyczne w KRZ

Adam Meissner SZTUCZNA INTELIGENCJA

Wstęp do logiki. Klasyczny Rachunek Zdań III

Definicja pochodnej cząstkowej

Rachunek zdań. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Struktury formalne, czyli elementy Teorii Modeli

Logika Stosowana. Wykład 2 - Logika modalna Część 3. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2017/2018

Logika. Michał Lipnicki. 15 stycznia Zakład Logiki Stosowanej UAM. Michał Lipnicki () Logika 15 stycznia / 37

Wykład 6. Reguły inferencyjne systemu aksjomatycznego Klasycznego Rachunku Zdań

1.2.3 Funkcjonalna pełność

Twierdzenia Gödla dowody. Czy arytmetyka jest w stanie dowieść własną niesprzeczność?

vf(c) =, vf(ft 1... t n )=vf(t 1 )... vf(t n ).

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki

Rachunek zdań i predykatów

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

Definicja: alfabetem. słowem długością słowa

Przykładowe dowody formuł rachunku kwantyfikatorów w systemie tabel semantycznych

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 10. Twierdzenie o pełności systemu aksjomatycznego KRZ

WYKŁAD 3: METODA AKSJOMATYCZNA

Konsekwencja logiczna

Teoretyczne Podstawy Języków Programowania Wykład 1. Rachunek zdań

JEZYKOZNAWSTWO. I NAUKI O INFORMACJI, ROK I Logika Matematyczna: egzamin pisemny 29 czerwca Imię i Nazwisko:...

LOGIKA I TEORIA ZBIORÓW

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

Andrzej Wiśniewski Logika II. Wykład 6. Wprowadzenie do semantyki teoriomodelowej cz.6. Modele i pełność

JEZYKOZNAWSTWO. I NAUKI O INFORMACJI, ROK I Logika Matematyczna: egzamin pisemny 11 czerwca Imię i Nazwisko:... FIGLARNE POZNANIANKI

Język rachunku predykatów Formuły rachunku predykatów Formuły spełnialne i prawdziwe Dowody założeniowe. 1 Zmienne x, y, z...

Logika intuicjonistyczna

Egzamin z logiki i teorii mnogości, rozwiązania zadań

Logika Matematyczna. Zadania Egzaminacyjne, 2007

Zasady krytycznego myślenia (1)

LOGIKA MATEMATYCZNA WYKŁAD 10: METODA REZOLUCJI W KRZ (20XII2007) II. 10. Dowody rezolucyjne w KRZ Przypomnienia i kilka definicji

Monoidy wolne. alfabetem. słowem długością słowa monoidem wolnym z alfabetem Twierdzenie 1.

Programowanie deklaratywne

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

II Matematyka 2 stopnia( 3W). Logika i podstawy matematyki. Janusz Czelakowski. Wykład 8. Arytmetyka

Programowanie logiczne a negacja

System hilbertowski. Plan wykładu. hilbertowskiego. Definicja systemu hilbertowskiego. Podstawowe twierdzenie systemu. Podstawowe twierdzenie systemu

Wyszukiwanie. Wyszukiwanie binarne

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki. Wykład 14. Wprowadzenie do logiki intuicjonistycznej

Imię i nazwisko:... OBROŃCY PRAWDY

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykłady 7 i 8. Aksjomatyczne ujęcie Klasycznego Rachunku Zdań

Początki informatyki teoretycznej. Paweł Cieśla

Dowody założeniowe w KRZ

Uzgadnianie formuł rachunku predykatów

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

Gramatyki atrybutywne

Programowanie deklaratywne

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka

JAO - Wprowadzenie do Gramatyk bezkontekstowych

1. Elementy logiki matematycznej, rachunek zdań, funkcje zdaniowe, metody dowodzenia, rachunek predykatów

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

PRZEWODNIK PO PRZEDMIOCIE

1 Podstawowe oznaczenia

LOGIKA Klasyczny Rachunek Zdań

Logika predykatów pierwszego rzędu PROLOG. Zarządzanie wiedzą. Wykład Reprezentacja wiedzy logika predykatów. Joanna Kołodziejczyk.

Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I

Wykład ze Wstępu do Logiki i Teorii Mnogości

Klasyczny rachunek predykatów

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Transkrypt:

Wprowadzenie do Sztucznej Inteligencji Wykład 2 Informatyka Studia InŜynierskie Konsekwencje logiczne Formuła A jest konsekwencją logiczną zbioru formuł U, co zapisujemy U A, jeŝeli kaŝda interpretacja, która spełnia U (tzn. jest jego modelem) spełnia takŝe A. JeŜeli zbiór formuł U jest pusty, to pojęcie konsekwencji logicznej jest toŝsame z pojęciem prawdziwości, co zapisujemy A. Niech U={A 1,A 2,,A n } będzie zbiorem formuł, zaś A będzie pojedynczą formułą. Zachodzi wówczas: U A wtedy i tylko wtedy, gdy A 1 A n A. Automatyczne dowodzenie twierdzeń O teoriach formalnie System Logic Theorist System General Problem Solver (GPS) Strategie rezolucyjne - heurystka w procesie dowodzenia Podstawowe pojęcia dotyczące teorii Teoria Zbiór formuł T nazywamy teorią wtw, gdy jest on zamknięty ze względu na konsekwencje logiczne. Zbiór formuł T jest zamknięty ze względu na konsekwencje logiczne wtw, gdy dla wszystkich formuł A zachodzi zaleŝność: jeŝeli T A, to A T. Elementy zbioru T nazywamy twierdzeniami. Niech U będzie zbiorem formuł. Zbiór T(U)={A U A } nazywamy teorią zbioru formuł U, zaś formuły naleŝące do U nazywamy aksjomatami. 1

Wnioskowanie (dowód) Wnioskowaniem ze zbioru formuł U (przesłanek) formuły A (wniosku) nazywamy skończony ciąg formuł W=W 1,...,W n, taki, Ŝe W n =A oraz kaŝda z formuł W i (1 i n) jest elementem zbioru U (aksjomatem) bądź wnioskiem wyprowadzonym za pomocą pewnej reguły wnioskowania z wcześniejszych przesłanek W j. JeŜeli dla danej formuły A oraz zbioru U istnieje wnioskowanie, to piszemy U A. Własności teorii Teoria jest niesprzeczna - to znaczy Ŝadne zdanie i jego negacja nie mogą być jednocześnie twierdzeniami tej teorii. Teoria T (U) jest zupełna, wtedy i tylko wtedy, gdy dla kaŝdego zdania A, albo U A, albo U A. Poprawność i pełność wnioskowania Procedura wnioskowania (procedura dowodowa) jest poprawna, jeŝeli kaŝda formuła produkowana przez tą procedurę ze zbioru formuł U jest równieŝ logiczną konsekwencją zbioru U. Procedura wnioskowania jest pełna, jeŝeli moŝe wygenerować kaŝdą (dowolną) formułę będącą logiczną konsekwencją zbioru formuł U. Dzięki twierdzeniu o pełności i poprawności problem stwierdzenia, czy formuła A jest logiczną konsekwencją zbioru formuł U moŝna sprowadzić do zagadnienia poszukiwania wnioskowania formuły A ze zbioru U, co jest o tyle istotne, Ŝe konstrukcja wnioskowania ma charakter wyłącznie syntaktyczny i poddaje się automatyzacji. Twierdzenie o niezupełności Twierdzenie Gödla (1931) Niech NT będzie zbiorem aksjomatów teorii liczb naturalnych. Jeśli teoria T (NT) jest niesprzeczna, to nie jest zupełna. Teoria T jest rozstrzygalna wtw, gdy istnieje algorytm, który dla kaŝdego zdania A pozwala stwierdzić, czy A T, czy A T. Większość teorii matematycznych, to teorie nierozstrzygalne. 2

Nierozstrzygalność rachunku predykatów Twierdzenie Church a (1936) Logika pierwszego rzędu nie jest rozstrzygalna, ale jest częściowo rozstrzygalna, tzn. nie istnieje algorytm, który dla dowolnej formuły rozstrzyga czy jest ona tautologią, czy nie; istnieje jednak algorytm, który dla dowolnej formuły, która jest tautologią pozwala to stwierdzić. Wniosek: Maksimum tego, czego moŝna oczekiwać od systemów automatycznego dowodzenia twierdzeń, jest konstrukcja dowodu dla formuły będącej twierdzeniem rozwaŝanej teorii rachunku predykatów. Dedukcja Dedukcja jest wnioskowaniem, w której podstawową regułą wnioskowania (dowodową) jest reguła odrywania: A, A B albo A, A B B B Reguła odrywania wymaga aby formuły miały postać atomową lub były klauzulami Horna. Pełność procedury dowodowej - dlaczego? Istnienie pełnej procedury dowodowej: zredukowałoby proces dowodzenia jedynie do mechanicznych manipulacji składnią formuł logicznych oznaczałoby, iŝ wszystkie wnioski i twierdzenia logiki są zawsze i jedynie pochodną przyjętego zbioru aksjomatów i umoŝliwiłoby tym samym automatyzację procesu rozwiązywania kaŝdego problemu sformułowanego w języku logiki (pomijamy problem złoŝoności obliczeniowej takiego procesu!) Logic Theorist (LT) Reprezentacja wiedzy: rachunek zdań i predykatów Mechanizmy wnioskowania: podstawienie zastąpienie reguła odrywania reguła łańcucha Sterowanie wnioskowaniem: przeszukiwanie począwszy od celu we wszystkich moŝliwych kierunkach 3

Logic Theorist (LT): wnioskowanie Podstawienie W kaŝdym twierdzeniu, o którym wiemy, Ŝe jest prawdziwe moŝna podstawić za zmienną dowolne wyraŝenie (w kaŝdym wystąpieniu tej zmiennej). Przykład (B B) B... aksjomat A za B... podstawienie ( A A) A... wynik Logic Theorist (LT): wnioskowanie Reguła odrywania (modus ponens) Z prawdziwości implikacji i jej przesłanek moŝemy wnioskować o prawdziwości jej konkluzji: [(A B) A ] B albo: A B, A B Reguła łańcucha JeŜeli mamy A B oraz B C, to mamy nowy problem (podcel): A C Logic Theorist (LT): wnioskowanie Zastąpienie Operator wyraŝenia moŝna zastąpić wyraŝeniem logicznie równowaŝnym lub jego definicją. Przykład ( A B) (A B)... Definicja ( A A) A... WyraŜenie (A A) A... Zastąpienie Logic Theorist (LT): sterowanie Funkcjonowanie systemu LT opiera się na następującej sekwencji działań: Po pierwsze, wykonanie wszystkich moŝliwych zmian w bieŝącym celu z wykorzystaniem operacji podstawienia, Po drugie, jeŝeli to nie prowadzi do dowodu, stosujemy wszystkie moŝliwe oderwania i zastąpienia do naszego celu; jeŝeli nie doprowadzi to Ŝadnego z wyraŝeń do aksjomatu, wyniki dodawane są do listy podcelów, Po trzecie, stosujemy regułę łańcucha, Po czwarte, jeŝeli Ŝadne z trzech powyŝszych działań nie doprowadziło do dowodu, przechodzimy do listy podcelów i wybieramy kolejny nie rozwaŝany dotąd podcel 4

Logic Theorist (LT): sterowanie Warunki stopu systemu LT: znaleziono dowód lista podcelów jest pusta (tzn. nie moŝna wywieść z posiadanych przesłanek) dostępny czas i/lub pamięć zostały wyczerpane Logic Theorist (LT): podsumowanie Program napisany przez Newella, Simona i Shawa w roku 1956, który dowodził podstawowe twierdzenia pierwszego rozdziału Principia Mathematica Wnioskowanie: dedukcja Procedura pomocnicza: unifikacja wyraŝeń Problemy: złoŝoność, sterowanie wnioskowaniem Logic Theorist (LT): przykłady cel p (q p) nie jest aksjomatem zastąpienie (q p) ( q p) wynik: p ( q p) podcel p ( q p) podstawienie q za q p (q p) to aksjomat c.b.d.u. cel (p p) p nie jest aksjomatem zastąpienie (p p) ( p p) wynik: ( p p) p podcel ( p p) p podstawienie p za p (p p) p to aksjomat c.b.d.u. Means Ends Analysis: system GPS Architektura systemu GPS (General Problem Solver) Lista operatorów Mechanizm porównywania opisów stanów i wykrywania róŝnic Tablica połączeń (tablica operator-róŝnica) Sterowanie: algorytm Means Ends Analysis (MEA) Budowa operatora: warunki początkowe (stosowalności) funkcja transformacji, czyli realizowana operacja, opisana przez rezultaty jej zastosowania redukowane róŝnice (z tablicy połączeń) 5

Means Ends Analysis: algorytm procedure MEA(s bieŝący, s cel ) Porównaj s bieŝący i s cel ; jeśli nie ma róŝnic, to koniec(sukces) w przeciwnym przypadku: a. Wybierz najbardziej istotną róŝnicę b. Wybierz nie analizowany dotąd operator Op, który ma zastosowanie do wykrytej róŝnicy; jeŝeli brak takich operatorów, to koniec(poraŝka) c. Zastosuj operator Op do stanu s bieŝący : wygeneruj opisy dwóch stanów: Start(Op) - stan, w którym spełnione są warunki początkowe Op, Rezultat(Op) - stan, będący rezultatem zastosowania Op d. JeŜeli Część1 MEA(s bieŝący, Start(Op)) Część2 MEA(Rezultat(Op), s cel ) zakończą się sukcesem, to koniec(sukces); zwróć wynik w postaci konkatenacji: Część1, Op, Część2 w przeciwnym przypadku koniec(poraŝka) end Means Ends Analysis: przykład Tablica operatorów: OPERATOR Warunek Rezultat PUSH at(robot, obiekt) at(obiekt, miejsce) (obiekt, miejsce) large(obiekt) at(robot, miejsce) clear(obiekt) armempty CARRY at(robot, obiekt) at(obiekt, miejsce) (obiekt, miejsce) small(obiekt)) at(robot, miejsce) armempty GO at(robot, miejsce) (miejsce) ---- PICKUP at(robot, obiekt) holding(obiekt) (obiekt) armempty PUTDOWN holding(obiekt) armempty (obiekt) STACK at(robot, obiekt2) on(obiekt1, obiekt2) (obiekt1, obiekt2) holding(obiekt1) armempty Means Ends Analysis: algorytm (uwagi) Uwagi do algorytmu: Mechanizm wyboru (kolejność) róŝnic duŝy wpływ na efektywność Mechanizm wyboru operatora usunięcie jednej róŝnicy moŝe wygenerować więcej innych (nowych!) róŝnic Means Ends Analysis: przykład Tablica operator-róŝnica: Przemieść obiekt Przemieść PUSH CARRY GO PICKUP PUTDOWN STACK robota Oczyść obiekt obiekt PołóŜ obiekt PołóŜ obiekt na obiekt na obiekt OpróŜnij OpróŜnij ramię ramię Trzymaj obiekt 6

Means Ends Analysis: przykład Start Cel on(ksiąŝka, biurko) on(ksiąŝka, biurko) at(biurko, pokój1) large(biurko) at(biurko, pokój2) small(ksiąŝka) at(biurko,pokój2) A B C D...... Start PUSH Cel at(robot,biurko) at(robot,biurko) clear(biurko) at(biurko,pokój2) A B C D...... Start GO PUSH Cel... Means Ends Analysis: przykład... at(robot,biurko) clear(biurko) clear(biurko) holding(ksiaŝka) A at(robot,biurko) armepmty at(biurko,pokój2) on(ksiąŝka,biurko)... Start GO PICKUP PUTDOWN PUSH STACK Cel at(robot,biurko) clear(biurko) clear(biurko) at(robot,ksiąŝka) holding(ksiąŝka) A at(robot,biurko) armepmty at(biurko,pokój2) on(ksiąŝka,biurko). Start GO PICKUP PUTDOWN PUSH PICKUP STACK Cel itd. (jeszcze dwa kroki) Means Ends Analysis: przykład Start Cel on(ksiąŝka, biurko) on(ksiąŝka, biurko) at(biurko, pokój1) large(biurko) at(biurko, pokój2) small(ksiąŝka) at(robot,biurko) clear(biurko) clear(biurko) A at(robot,biurko) armepmty at(biurko,pokój2) on(ksiąŝka,biurko)...... Start GO PICKUP PUSH Cel at(robot,biurko) clear(biurko) clear(biurko) A at(robot,biurko) armepmty at(biurko,pokój2) on(ksiąŝka,biurko)... Start GO PICKUP PUTDOWN PUSH Cel... Means Ends Analysis: podsumowanie Słabości MEA: trudna do zdefiniowania w niektórych dziedzinach tablica operator-róŝnica duŝy rozmiar tablicy operator-róŝnica dla realnych problemów trudno z rozwiązań opartych na częściowych sukcesach wnioskować o globalnej strategii rozwiązywania problemu (niejawne konflikty między operatorami) 7

Reguła modus ponens: niepełność Przykładowy zbiór aksjomatów X p(x) q(x) X p(x) r(x) X q(x) s(x) X r(x) s(x) Dowód nieformalny dla s(a): s(a) jest prawdziwe, gdy q(a) lub r(a) jest prawdziwe; q(a) lub r(a) musi być prawdziwe, bo p(x) lub p(x) jest prawdziwe (zawsze!). Zatem s(a) z pewnością jest prawdziwe! Modus Ponens: X p(x) r(x) nie moŝna przekształcić do postaci Horna (byłoby wtedy p(x) r(x)) i tym samym nie moŝna skorzystać z reguły odrywania by dowieść prawdziwości s(a). Wniosek: Istnieją twierdzenia (konsekwencje logiczne) prawdziwe w logice predykatów, których nie moŝna dowieść za pomocą modus ponens. Rezolucja: pojęcia podstawowe literały komplementarne przesłanka przesłanka A B, B C A C rezolwenta Rezolucja ma charakter binarny tzn. dotyczy dokładnie dwóch klauzul, a rezolwenta jest wyprowadzana z jednej pary literałów komplementarnych. Reguła rezolucji: zasada Zasada rezolucji: A B, B C albo A B, B C A C A C Interpretacja (dysjunkcji): Jeśli B jest fałszywe, to w pierwszej dysjunkcji A musi być prawdziwe (skoro cała alternatywa jest prawdziwa); ale jeśli B jest prawdziwe, to wtedy w drugiej dysjunkcji C musi być prawdziwe (skoro ta alternatywa teŝ jest prawdziwa); zatem, A lub C są prawdziwe. Interpretacja (implikacji): poprawność zasady rezolucji wynika z przechodniości implikacji Rezolucja: wywód rezolucyjny oraz dowód Wywodem rezolucyjnym klauzuli C ze zbioru klauzul U nazywamy ciąg klauzul W=W 1,...,W n, którego elementami są wyłącznie elementy zbioru U oraz rezolwenty klauzul występujących wcześniej w tym ciągu, zaś W n =C. Wywód rezolucyjny klauzuli pustej ze zbioru U nazywamy dowodem niespełnialności (sprzeczności) dla U. 8

Zasada rezolucji: pełność czy niepełność? Zasada rezolucji nie jest pełna, gdyŝ nie jest moŝliwe wywiedzenie formuły P P(będącego tautologią) dla pustego zbioru klauzul początkowych (aksjomatów). Zasada rezolucji jest jednak pełna w sensie refutacji tzn. zawsze umoŝliwia wyprowadzenie klauzuli pustej (fałszywej w kaŝdej interpretacji!), jeśli dany zbiór klauzul jest niespełnialny. Refutacja (reductio ad absurdum) - dowód nie wprost Aby dowieść, Ŝe klauzula P jest logiczną konsekwencją zbioru klauzul S wystarczy wykazać, Ŝe zbiór {S P} jest sprzeczny. Rezolucja: drzewo wywodu (przykład) p p q p r r q r p Rezolucja: graf wywodu (przykład) p p q p r r p Rezolucja: procedura dowodowa Przekształć przesłanki lub aksjomaty w formę klauzul Dodaj do zbioru aksjomatów zaprzeczenie twierdzenia, które ma być udowodnione (w formie klauzuli) Generuj nowe klauzule (rezolwenty), wynikające z tego zbioru (zgodnie z zasadą rezolucji) i powiększaj o nie zbiór Szukaj sprzeczności, podąŝając ku klauzuli pustej Warunki uŝyte do wygenerowania pustej klauzuli są tymi, w których twierdzenie (zaprzeczone) jest prawdziwe Faktoryzacja - w rachunku predykatów - usuwanie z klauzul literałów powtarzających się 9

Faktoryzacja: znaczenie dla pełności rezolucji Przykładowy zbiór klauzul (niespełnialny) p(u) p(v) p(x) p(y) Dowód rezolucyjny: KaŜda rezolwenta tego zbioru klauzul składa się z dwóch literałów, więc nie moŝe być pusta! Dowiedzenie sprzeczności za pomocą rezolucji nie jest moŝliwe. Rozwiązanie: Usunięcie wszystkich powtarzających się w klauzulach literałów: Klauzula p(u) p(v) z podstawieniem {U/V} będzie równa p(u). Klauzula p(x) p(y) z podstawieniem {X/Y} będzie równa p(x). Rezolucja: przykład c.d. die(fido) dog(fido) dog(x) animal(x) animal(y) die(y) {fido/y} {Y/X} dog(y) die(y) die(fido) pusta klauzula Rezolucja: przykład Wszystkie psy są zwierzętami. X ( dog(x) animal(x) ) ❶ Fido jest psem. dog(fido) ❷ Wszystkie zwierzęta umrą. Y ( animal(y) die(y) ) ❸ Fido umrze? die(fido) ❹ Modus Ponens Podstawienie w ❶ i reguła odrywania: animal(fido) Podstawienie {fido/y} w ❸ i reguła odrywania: die(fido) Forma predykatu Forma klauzuli X ( dog(x) animal(x) ) dog(x) animal(x) dog(fido) dog(fido) Y ( animal(y) die(y) ) animal(y) die(y) dowieść: die(fido) zanegowane twierdzenie: die(fido) Rezolucja: strategie dowodzenia Strategie wyboru Strategia liniowa (ang. linear resolution) Strategia źródłowa (ang. input resolution) Strategia preferencji jednostkowej (ang. unit preference resolution) Strategia zbioru podpierającego/zbioru uzasadnień (ang. set of support resolution) Przeszukiwanie wszerz (saturacja) Strategie eliminacji usuwanie klauzul zawierających czyste literały (brak drugiej klauzuli zawierającej literał komplementarny) usuwanie tautologii (klauzul zawierających literały komplementarne) usuwanie klauzul pochłoniętych (np. p qpochłania p q r) 10

Rezolucja: przeszukiwanie wszerz (saturacja) dog(fido) dog(x) animal(x) animal(y) die(y) die(fido) {fido/y} {X/Y} animal(fido) animal(fido) dog(x) die(x) {fido/y} die(fido) die(fido) dog(fido) dog(fido) Rezolucja: strategie zbioru podpierającego (przykład) Sprzeczny zbiór S: Zbiór S\T: p q p r q r r :zbiór T p q q p Rezolucja: strategia zbioru podpierającego Zbiór uzasadnień T - dowolny niepusty podzbiór zbioru S klauzul początkowych (skończonego i niepustego) W kaŝdym kroku wywodu przynajmniej jedna z przesłanek jest klauzulą ze zbioru T bądź klauzulą wyprowadzoną we wcześniejszej fazie wywodu (inaczej: zbiór T jest po wykonaniu kaŝdego kroku wzbogacany o wyprowadzony wniosek/rezolwentę) Strategia zupełna wtedy i tylko wtedy, gdy zbiór S jest sprzeczny, zaś S\T jest spełnialny Istnieją róŝne metody wyboru zbioru T (najczęściej zbiór ten zawiera negację dowodzonego twierdzenia) Rezolucja: strategia liniowa W kaŝdym kroku jedna z przesłanek jest ostatnio wygenerowaną rezolwentą, a druga jednym z wcześniejszych wniosków (rezolwent) lub klauzulą początkową Dowód rozpoczyna się od dowolnie wybranej klauzuli początkowej (choć najlepiej aby było to twierdzenie do udowodnienia) Dowód ma charakter przejrzysty i ciągły - ostatni wniosek jest przesłanką w kolejnym kroku Strategia zupełna MoŜna łączyć ze strategią zbioru uzasadnień 11

Rezolucja: strategia liniowa dog(fido) dog(x) animal(x) animal(y) die(y) die(fido) {fido/y} animal(fido) {fido/y} animal(fido) die(fido) dog(fido) Rezolucja: strategia źródłowa W kaŝdym kroku przynajmniej jedna przesłanka jest klauzulą początkową (a nie rezolwentą) Odmiana strategii liniowej (bardziej rygorystyczna!) Strategia niezupełna! Strategia zupełna w klasie klauzul Horna Rezolucja: strategia liniowa (przykład) p q p r q r r p q q p r r Rezolucja: strategia źródłowa (niezupełność) Zbiór sprzeczny: p q p q p q p q q p gdy liniowa! q p q p p q q itd. 12

Rezolucja: strategia źródłowa (przykład) dog(fido) dog(x) animal(x) animal(y) die(y) die(fido) {fido/y} animal(fido) {fido/y} animal(fido) die(fido) dog(fido) Rezolucja: strategia preferencji jednostkowej dog(fido) dog(x) animal(x) animal(y) die(y) die(fido) {fido/y} animal(fido) {fido/y} animal(fido) die(fido) dog(fido) Rezolucja: strategia preferencji jednostkowej W kaŝdym kroku przynajmniej jedna przesłanka powinna być klauzulą pojedynczą (pojedynczy literał) Strategia zupełna Strategia niezupełna, gdy przynajmniej jedna przesłanka zawsze musi być klauzulą pojedynczą wtedy jest to tzw. strategia jednostkowa (zupełna w klasie klauzul Horna!) Rezolucja: strategie eliminacji Usuwanie klauzul zawierających czyste literały (brak innej klauzuli zawierającej literał komplementarny) p l q l p q r p q r l l q r?? r 13

Rezolucja: strategie eliminacji Usuwanie tautologii (klauzul zawierających parę literałów komplementarnych) Niespełnialny zbiór klauzul pozostaje niespełnialny nawet, jeśli usuniemy z niego wszystkie tautologie Literały tautologii muszą być ściśle komplementarne: p(a) p(x) nie jest tautologią p(a) p(a) jest tautologią KaŜda nowa rezolwenta na dowolnym etapie procesu rezolucji moŝe być tautologią Rezolucja: strategie eliminacji Usuwanie klauzul pochłoniętych c.d. Niespełnialny zbiór klauzul pozostaje niespełnialny nawet, jeśli usuniemy z niego klauzulę pochłonięta przez inną klauzulę KaŜda nowa rezolwenta na dowolnym etapie procesu rezolucji moŝe być pochłonięta przez inną klauzulę Pełność strategii eliminacji tautologii i klauzul pochłoniętych zaleŝy od sposobu usuwania klauzul (np. połączenie z saturacją gwarantuje pełność) Rezolucja: strategie eliminacji Usuwanie klauzul pochłoniętych Pochłanianie: klauzula Cpochłania klauzulę D wtedy i tylko wtedy, gdy istnieje podstawienie σ takie, Ŝe zbiór literałów klauzuli Cσ jest podzbiorem zbioru literałów D Przykład Klauzule: Zbiory literałów: C = p(x) q(y) C = { p(x), q(y) } D = p(a) q(v) r(w) D = { p(a), q(v), r(w) } Podstawienie: Wynik podstawienia: σ = {a/x, V/Y} C σ = {p(a), q(v)} PoniewaŜ C σ D, to C pochłania D. 14