Uzgadnianie formuł rachunku predykatów

Podobne dokumenty
Problem. Uzgadnianie wyrażeń rachunku predykatów. Instancja wyrażenia. Podstawienie termu za zmienną. Joanna Józefowska

Uzgadnianie wyrażeń rachunku predykatów. Adam i orzeszki. Joanna Józefowska. Poznań, rok akademicki 2009/2010

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

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

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

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

Semantyka rachunku predykatów

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

Składnia rachunku predykatów pierwszego rzędu

Klasyczny rachunek predykatów

Metoda Tablic Semantycznych

3. Wykład Układy równań liniowych.

Adam Meissner.

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

Matematyka dyskretna Literatura Podstawowa: 1. K.A. Ross, C.R.B. Wright: Matematyka Dyskretna, PWN, 1996 (2006) 2. J. Jaworski, Z. Palka, J.

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

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

Działania Definicja: Działaniem wewnętrznym w niepustym zbiorze G nazywamy funkcję działającą ze zbioru GxG w zbiór G.

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

Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0

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

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.

Internet Semantyczny i Logika I

1.1 Definicja. 1.2 Przykład. 1.3 Definicja. Niech G oznacza dowolny, niepusty zbiór.

Rekurencyjna przeliczalność

Kultura logicznego myślenia

Elementy logiki Klasyczny rachunek predykatów

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

Liczby zespolone. x + 2 = 0.

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.

Obliczenia inspirowane Naturą

Równania różniczkowe liniowe rzędu pierwszego

Wprowadzenie do logiki Zdania, cz. III Język Klasycznego Rachunku Predykatów

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

Pendolinem z równaniami, nierównościami i układami

FUNKCJA LINIOWA - WYKRES

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

Wykład z równań różnicowych

Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Zmienne losowe, statystyki próbkowe. Wrocław, 2 marca 2015

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Programowanie deklaratywne

Programowanie w Logice

Prawdopodobieństwo i statystyka

Logika Matematyczna 16 17

LOGIKA Klasyczny Rachunek Zdań

Matematyczne Podstawy Informatyki

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

Wykład 14 i 15. Równania różniczkowe. Równanie o zmiennych rozdzielonych. Definicja 1. Równaniem różniczkowym zwyczajnym rzędu n nazywamy równanie

Wykład 11b. System aksjomatyczny Klasycznego Rachunku Predykatów. Aksjomaty i reguły inferencyjne

Obliczenia iteracyjne

UKŁADY RÓWNAŃ LINIOWYCH

LOGIKA I TEORIA ZBIORÓW

Elementy logiki matematycznej

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

Algebra. Jakub Maksymiuk. lato 2018/19

Ciała i wielomiany 1. przez 1, i nazywamy jedynką, zaś element odwrotny do a 0 względem działania oznaczamy przez a 1, i nazywamy odwrotnością a);

Programowanie w logice

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

FUNKCJA LINIOWA - WYKRES. y = ax + b. a i b to współczynniki funkcji, które mają wartości liczbowe

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

WYKŁADY Z RACHUNKU PRAWDOPODOBIEŃSTWA I wykład 2 i 3 Zmienna losowa

Układy liniowo niezależne

Wprowadzenie do Prologa

Paradygmaty programowania

Wstęp do logiki. Klasyczny Rachunek Predykatów I

Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I

Rachunek logiczny. 1. Język rachunku logicznego.

1. Liczby zespolone. Jacek Jędrzejewski 2011/2012

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Elementy rachunku lambda. dr hab. inż. Joanna Józefowska, prof. PP 1

Analiza matematyczna i algebra liniowa Elementy równań różniczkowych

WYKŁAD 6. Witold Bednorz, Paweł Wolff. Rachunek Prawdopodobieństwa, WNE, Uniwersytet Warszawski. 1 Instytut Matematyki

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

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

Statystyka. Wykład 2. Krzysztof Topolski. Wrocław, 11 października 2012

Paradygmaty dowodzenia

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

Elementy Modelowania Matematycznego Wykład 4 Regresja i dyskryminacja liniowa

RÓWNANIA RÓŻNICZKOWE WYKŁAD 2

Hipotezy statystyczne

4 Równania różniczkowe w postaci Leibniza, równania różniczkowe zupełne

METODY ESTYMACJI PUNKTOWEJ. nieznanym parametrem (lub wektorem parametrów). Przez X będziemy też oznaczać zmienną losową o rozkładzie

Hipotezy statystyczne

Przykład 1 W przypadku jednokrotnego rzutu kostką przestrzeń zdarzeń elementarnych

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

Jak należy się spodziewać, mamy. Zauważmy jednak, że nie zachodzi równość

Algebra abstrakcyjna

Zmienne losowe ciągłe i ich rozkłady

Statystyka matematyczna

3. FUNKCJA LINIOWA. gdzie ; ół,.

III rok kognitywistyki UAM,

W pewnym mieście jeden z jej mieszkańców goli wszystkich tych i tylko tych jej mieszkańców, którzy nie golą się

Wykład 11: Martyngały: definicja, twierdzenia o zbieżności

Logika pragmatyczna. Logika pragmatyczna. Kontakt: Zaliczenie:

Prawdopodobieństwo i statystyka

Zbiory, relacje i funkcje

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

Logika pragmatyczna dla inżynierów

Transkrypt:

Składanie podstawień Plan wykładu Uzgadnianie Logika obliczeniowa Instytut Informatyki Plan wykładu Składanie podstawień 1 Składanie podstawień Podstawienie Motywacja Złożenie podstawień 2 Uzgadnianie Podstawienie uzgadniające Algorytm uzgadniania Uzgadnianie

Problem jedzenie(x 1 ) lubi(adam, x 1 ) jedzenie(jabłko) jedzenie(kurczak) je(x 1, x 2 ) żyje(x 1 ) jedzenie(x 2 ) je(bogdan, orzeszki) żyje(bogdan) je(bogdan, x 2 ) je(zuzia, x 2 ) Podstawienie termu za zmienną Podstawieniem (termów za zmienne) nazywamy zbiór {x 1 t 1,..., x n t n } gdzie x i są różnymi zmiennymi, a t i są termami różnymi od odpowiadających im zmiennych x i. Podstawienie puste jest to podstawienie zdefiniowane przez zbiór pusty. Podstawienia oznaczamy małymi literami alfabetu greckiego: λ, µ, δ, θ. Term Stała, zmienna lub symbol funkcyjny z listą argumentów.

Instancja wyrażenia Niech E będzie wyrażeniem, a θ = {x 1 t 1,..., x n t n } podstawieniem. Instancję E θ wyrażenia E otrzymujemy przez jednoczesne zastąpienie każdego wystąpienia zmiennej x i termem t i. Wyrażenie E p(x, y) q(y) r(z) Podstawienie θ {x a, y w, z f (w)} Instancja E θ p(a, w) q(w) r(f (w)) Kilka podstawień E = p(u, v, x, y, z) θ = {x f (v), y f (a), z u} δ = {y g(a), u f (x), v f (f (a))} Eθ = p(u, v, f (v), f (a), u) (Eθ)δ = p(f (x), f (f (a)), f (f (f (a))), f (a), f (x)) Podstawienie należy wykonać równocześnie we wszystkich wystąpieniach zmiennej.

Kilka podstawień i kilka wyrażeń E 1 E 2... E n θ 1 (E 1 )θ 1 (E 2 )θ 1... (E n )θ 1 θ 2 ((E 1 )θ 1 )θ 2 ((E 2 )θ 1 )θ 2... ((E n )θ 1 )θ 2............... θ m ((((E 1 )θ 1 )θ 2 )...)θ m ((((E 2 )θ 1 )θ 2 )...)θ m... ((((E n )θ 1 )θ 2 )...)θ m Czy można tę operację usprawnić? Znajdujemy złożenie podstawień θ = (θ 1... θ m ) i podstawiamy we wszystkich wyrażeniach. E 1 E 2... E n θ (E 1 )θ (E 2 )θ... (E n )θ Przykład E = p(u, v, x, y, z) θ = {x f (v), y f (a), z u} δ = {y g(a), u f (x), v f (f (a))} Eθ = p(u, v, f (v), f (a), u) (Eθ)δ = p(f (x), f (f (a)), f (f (f (a))), f (a), f (x)) Eδ = p(f (x), f (f (a)), x, g(a), z) (Eδ)θ = p(f (f (v)), f (f (a)), f (v), g(a), u) Składanie podstawień nie jest przemienne!

Definicja Niech θ = {x 1 t 1,..., x n t n } i δ = {y 1 s 1,..., y n s n } będą podstawieniami. Niech X i Y będą zbiorami zmiennych zastępowanych odpowiednio w podstawieniach θ i δ. Złożenie podstawień Podstawienie θδ (złożenie podstawień θ i δ), definiujemy jako następujące podstawienie: θδ = {x i t i δ x i X, x i t i δ} {y j s i y i Y, y j / X} Podstawienie δ do termów t i z podstawienia θ. Ze zbioru δ dodajemy podstawienia dla tych zmiennych, którym θ nie nadaje wartości. Łączność Składanie podstawień jest łączne, tj. λ(θδ) = (λθ)δ. λ = {x g(z)}, θ = {y f (z)}, δ = {z b} θδ = {y f (b), z b} λ(θδ) = {x g(b), y f (b), z b} λθ = {x g(z), y f (z)} (λθ)δ = {x g(b), y f (b), z b} Składanie podstawień jest łączne!

Przemienność E = p(u, v, x, y, z) θ = {x f (v), y f (a), z u} δ = {y g(a), u f (x), v f (f (a))} θδ = {x f (f (f (a))), y f (a), z f (x)} {u f (x), v f (f (a))} E(θδ) = p(f (x), f (f (a)), f (f (f (a))), f (a), f (x)) δθ = {y g(a), u f (f (v)), v f (f (a))} {x f (v), z u} E(δθ) = p(f (f (v)), f (f (a)), f (v), g(a), u) Składanie podstawień nie jest przemienne! Podstawienie uzgadniające Dla dowolnego zbioru atomów podstawieniem uzgadniającym tego zbioru nazywamy podstawienie spełniajace warunek: instancją wszystkich elementów tego zbioru uzyskaną przez zastosowanie tego podstawienia jest ten sam atom. Podstawienie uzgadniajace µ nazywamy najbardziej ogólnym podstawieniem uzgadniającym danego zbioru atomów, jeśli każde podstawienie uzgadniające θ można uzyskać z µ przez zastosowanie dodatkowego podstawienia, czyli θ = µλ.

Podstawienie uzgadniające - przykłady Następujące pary formuł można uzgodnić: formuła 1 formuła 2 p(x, b, z) p(a, y, c) p(a, x, f (g(y))) p(y, f (z), f (z)) podstawienie uzgadniające {x a, y b, z c} {x f (g(a)), y a, z g(a)} wynik p(a, b, c) p(a, f (g(a)), f (g(a))) Następującyh par formuł nie można uzgodnić: formuła 1 formuła 2 p(x) q(x) p(x, y) p(z) p(f (x)) p(g(x)) p(x) p(f (x)) Algorytm uzgadniania Zbiór termów do uzgodnienia będziemy zapisywać w postaci zbioru równań na termach. Zbiór równań na termach jest w postaci rozwiązywalnej, jeśli spełnione są następujące warunki: wszystkie równania są postaci x i = t i, gdzie x i jest zmienną, i = 1,..., n,; jeżeli zmienna x i, wystepuje po lewej stronie równania, to nie występuje w żadnym innym miejscu. Zbiór równań w postaci rozwiązywalnej definiuje podstawienie {x 1 t 1,..., x n t n }.

Algorytm uzgadniania 1 Przekształć równanie t = x, gdzie t nie jest zmienną, do x = t. 2 Usuń równanie postaci x = x. 3 Niech t = t będzie równaniem takim, że t, t nie są zmiennymi. Jeśli glówne symbole funkcyjne termów t i t są różne, to zakończ algorytm i udziel odpowiedzi: zbiór termów nie jest uzgadnialny. W przeciwnym razie zastąp równanie f (t 1,..., t n) = f (t 1,..., t n), n równaniami postaci t 1 = t 1,..., t n = t n. Przykład p(a, x, f (g(y))) = p(y, f (z), f (z)) a = y x = f (z) f (g(y)) = f (z) y = a g(y) = z z = g(y) Algorytm uzgadniania 4 Niech x = t będzie równaniem takim, że zmienna x występuje w zbiorze równań nie tylko po lewej stronie tego równania. Jeśli zmienna x występuje w t, to zakończ algorytm i udziel odpowiedzi: zbiór termów nie jest uzgadnialny. W przeciwnym razie zastąp wszystkie wystąpienia zmiennej x w innych równaniach termem t. Przykład Najbardziej ogólne podstawienie uzgadniające µ = {x f (g(a)), y a, z g(a)} p(a, x, f (g(y))) = p(y, f (z), f (z)) x = f (z) y = a z = g(y) z = g(a) x = f (g(a))

Algorytm uzgadniania - własności Algorytm uzgadniania zawsze się zatrzymuje. Jeśli algorytm zakończy się udzieleniem odpowiedzi, że zbiór termów nie jest uzgadnialny, to dla danego zbioru równań nie istnieje podstawienie uzgadniające. Jeśli algorytm zakończy się sukcesem, to otrzymany zbiór równań jest w postaci rozwiązywalnej i definiuje najbardziej ogólne podstawienie uzgadniające podany zbiór równań: µ = {x 1 t 1,..., x n t n }. Najbardziej ogólne podstawienie uzgadniające Przykład A = p(f (y), a, g(y)) A = p(f (x), w, z) Podstawienie uzgadniające θ = {x b, y b, w a, z g(b)} Najbardziej ogólne podstawienie uzgadniające µ = {x y, w a, z g(y)} θ = µλ λ = {y b} µλ = {x b, y b, w a, z g(b)} = θ

Sprawdzanie występowania zmiennej Konieczność sprawdzania, czy term podstawiany za zmienną nie zawiera tej zmiennej, powoduje, że algorytm uzgadniania ma wykładniczą złożoność obliczeniową (względem wielkości uzgadnianych termów). Algorytmy stosowane w praktyce zwykle nie stosują tego sprawdzenia (ryzyko błędu!). Pytania 1 Uzgodnij (jeżeli to możliwe) następującą parę formuł rachunku predykatów. 2 Dane są dwa podstawienia λ i σ. Wykonaj podstawienie λσ do podanej formuły.