Składnia rachunku predykatów pierwszego rzędu

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

Semantyka rachunku predykatów

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

Adam Meissner.

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

Metoda Tablic Semantycznych

Klasyczny rachunek predykatów

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

Odwrotna Notacja Polska

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

Podstawowe Pojęcia. Semantyczne KRZ

III rok kognitywistyki UAM,

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

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

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

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

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

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

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

Uzgadnianie formuł rachunku predykatów

TRANSLACJA I TRANSLATORY

Kultura logicznego myślenia

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

Analiza semantyczna. Gramatyka atrybutywna

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

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

Ziemia obraca się wokół Księżyca, bo posiadając odpowiednią wiedzę można stwierdzić, czy są prawdziwe, czy fałszywe. Zdaniami nie są wypowiedzi:

Logika Matematyczna (1)

LOGIKA Klasyczny Rachunek Zdań

III rok kognitywistyki UAM,

Elementy logiki matematycznej

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

Metody Kompilacji Wykład 3

I. Podstawowe pojęcia i oznaczenia logiczne i mnogościowe. Elementy teorii liczb rzeczywistych.

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

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

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Rachunek logiczny. 1. Język rachunku logicznego.

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303

Elementy logiki Klasyczny rachunek predykatów

Języki programowania zasady ich tworzenia

Reguły gry zaliczenie przedmiotu wymaga zdania dwóch testów, z logiki (za ok. 5 tygodni) i z filozofii (w sesji); warunkiem koniecznym podejścia do

Programowanie logiczne a negacja

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

Wprowadzenie: języki, symbole, alfabety, łańcuchy Języki formalne i automaty. Literatura

Struktury formalne, czyli elementy Teorii Modeli

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

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

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

Adam Meissner STUCZNA INTELIGENCJA

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

Klasyczny rachunek zdań 1/2

Dowody założeniowe w KRZ

Kultura logiczna Klasyczny rachunek zdań 1/2

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

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

Projekt 4: Programowanie w logice

Adam Meissner SZTUCZNA INTELIGENCJA

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.

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

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

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

Programowanie deklaratywne i logika obliczeniowa

Logika Matematyczna (10)

Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I

Przykłady zdań w matematyce. Jeśli a 2 + b 2 = c 2, to trójkąt o bokach długości a, b, c jest prostokątny (a, b, c oznaczają dane liczby dodatnie),

Michał Lipnicki (UAM) Logika 11 stycznia / 20

Matematyka ETId Elementy logiki

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Logika Matematyczna (2,3)

LOGIKA I TEORIA ZBIORÓW

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

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ę

1 Logika Zbiory Pewnik wyboru Funkcje Moce zbiorów Relacje... 14

1. Klasyczny Rachunek Zdań

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

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

Wstęp do Techniki Cyfrowej... Algebra Boole a

Programowanie w logice

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

Jest to zasadniczo powtórka ze szkoły średniej, być może z niektórymi rzeczami nowymi.

JAO - Wprowadzenie do Gramatyk bezkontekstowych

Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11}

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

Programowanie w logice Wykład z baz danych dla

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

Logika Radosna 5. Jerzy Pogonowski. KRP: tablice analityczne. Zakład Logiki Stosowanej UAM

Elementy logiki Klasyczny rachunek zdań. Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki Uniwersytet im.

Lista 1 (elementy logiki)

Prolog (Pro-Logic) Programowanie w Logice. Dr inż. Piotr Urbanek

Wykład 1. Informatyka Stosowana. 3 października Informatyka Stosowana Wykład 1 3 października / 26

Predykat. Matematyka Dyskretna, Podstawy Logiki i Teorii Mnogości Barbara Głut

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

16. PODSTAWOWE POJĘCIA LOGIKI KWANTYFIKATORÓW

Elementy logiki Klasyczny rachunek predykatów

Programowanie w Logice

PODSTAWY SZTUCZNEJ INTELIGENCJI

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

Gramatyki atrybutywne

Logika Matematyczna (1)

Transkrypt:

Początek Gramatyka Kwantyfikatory Poprawność Logika obliczeniowa Instytut Informatyki Początek Gramatyka Kwantyfikatory Poprawność Plan wykładu 1 Na (dobry) początek Zrozumieć słowa Oswoić znaki 2 Gramatyka rachunku predykatów Podstawowe symbole Gramatyka rachunku predykatów Termy i formuły 3 Wyrażenia z kwantyfikatorami Zmienne kwantyfikowane Domknięcie formuły 4 Badanie poprawności formuł Drzewo wywodu i struktury Indukcja strukturalna

Składnia rachunku predykatów pierwszego rzędu Składnia języka formalnego Składnia oznacza reguły tworzenia wyrażeń języka z elementarnych symboli (alfabetu). Język opisujemy za pomocą składni i semantyki. Składnia rachunku predykatów pierwszego rzędu Rachunek predykatów pierwszego rzędu Rachunek predykatów jest systemem (językiem) formalnym, który wprowadzimy w dalszej części tego wykładu.

Alfabet grecki Symbole z zakresu logiki Operatory rachunku zdań : NOT negacja nieprawda, że AND koniunkcja i OR alternatywa lub IMP implikacja jeżeli... to EQV równoważność wtedy i tylko wtedy XOR alternatywa wykluczająca albo (dysjunkcja) NAND negacja koniunkcji NOR negacja alternatywy

Kwantyfikatory Kwantyfikator uniwersalny Symbol to kwantyfikator uniwersalny, który odczytujemy dla każdego. Kwantyfikator egzystencjalny Symbol to kwantyfikator egzystencjalny, który odczytujemy istnieje. Symbole z zakresu teorii zbiorów x X X Y x jest elementem zbioru X zbiór X jest podzbiorem zbioru Y X Y ( x x X x Y ) X Y suma (unia) zbiorów X i Y x X Y (x X x Y ) X Y wspólna część (przekrój) zbiorów X i Y x X Y (x X x Y )

Symbole z zakresu teorii zbiorów koliber PTAKI PTAKI ZWIERZĘTA PTAKI ZWIERZĘTA PTAKI ZWIERZĘTA koliber jest elementem (należy do) zbioru PTAKI zbiór PTAKI jest podzbiorem zbioru ZWIERZĘTA suma (unia) zbiorów PTAKI i ZWIERZĘTA wspólna część (przekrój) zbiorów X i Y Zbiory symboli podstawowych W rachunku predykatów wyróżniamy cztery przeliczalne zbiory symboli podstawowych: A - zbiór stałych, V - zbiór zmiennych, P - zbiór symboli predykatywnych, F - zbiór symboli funkcyjnych. Zwykle: A = {a, b, c} V = {x, y, z} P = {p, q, r} F = {f, g, h}

Operatory W rachunku predykatów występują te same operatory, które znamy z rachunku zdań, czyli: oraz - negacja, - koniunkcja, - alternatywa (dysjunkcja), - implikacja, - równoważność, - alternatywa wykluczająca, - kwantyfikator uniwersalny, - kwantyfikator egzystencjalny. Wyrażenia rachunku predykatów Definicja Każdy skończony ciąg symboli podstawowych i operatorów rachunku predykatów nazywamy wyrażeniem języka rachunku predykatów. Przykłady x y a f (a; x) p p(x, f (a, x)) x y( p(x, y) p(y, x)) x y a f (a; x) p x y a f (a; x) p x y (p(x) p(y)) Uwaga! Nie każde wyrażenie jest formułą języka rachunku predykatów.

Reguły konstrukcji formuł rachunku predykatów Formułą rachunku predykatów nazywamy wyrażenie skonstruowane zgodnie z następującą gramatyką: term ::= x x V term ::= a a A term ::= f(lista termów) f F lista termów ::= term term,lista termów atom ::= p(lista termów) p P form ::= atom form ::= form form ::= form form podobnie dla,,... form ::= x form x V form ::= x form x V Termy Term Term jest to stała, zmienna lub symbol funkcyjny z listą termów w nawiasach. Termy f (x, y) a Term nie jest formułą rachunku predykatów! Term może być argumentem funkcji lub predykatu.

Szczególne formuły rachunku predykatów Atom Atom jest to symbol predykatywny, z listą termów w nawiasach. Literał Literał jest to atom lub negacja atomu. Klauzula Klauzula jest to alternatywa literałów. Atomy p(a, x) q(x) Literał q(a, b, c) Klauzula p(a, b) q(x, y) Więcej przykładów Termy a x f (g(x), y)) g(f (a, g(b))) Atomy (formuły proste) p(a, b) p(x, f (a, x)) q(f (a, a), f (g(x), g(x))) p(a, b, g(x, y)) Formuły złożone x y p(x, y) p(y, x) x y p(x, y) x y (p(x) p(y)) x p(a, x) x (p(x) q(x)) ( x p(x) x q(x)) x (p(x) q(x)) ( x p(x) x q(x))

Inne języki formalne - Datalog Fakty Każdy fakt składa się z: predykatu, czyli nazwy relacji: jest rodzicem listy argumentów w nawiasach: (drogo, frodo) kropki na końcu jest rodzicem(drogo, frodo). Reguły Każda reguła składa się z: nagłówka: atomu symbolu :- zwykle czytanego jako słowo jeżeli treści: jednego lub więcej atomów połączonych spójnikami logicznymi i (przecinek) oraz lub ( ) jest przodkiem(x, Z):- jest rodzicem(x, Y), jest przodkiem(y, Z). Zmienne kwantyfikowane Zmienna x w kwantyfikowanej formule postaci xa jest nazywana zmienną kwantyfikowaną. Formuła A tworzy zasięg zmiennej kwantyfikowanej. Nie jest wymagane, aby zmienna x wystąpiła w zasięgu własnej kwantyfikacji.

Zmienne wolne i związane Zmienna x występująca w formule A jest nazywana zmienną wolną wtw, gdy x nie leży w zasięgu zmiennej kwantyfikowanej x. A(x 1,..., x n ) oznacza, że zbiór zmiennych wolnych formuły A jest podzbiorem zbioru {x 1,..., x n }. O zmiennej, która nie jest wolna mówimy, że jest związana. Formuła niezawierająca zmiennych wolnych jest nazywana formułą zamkniętą. Przykłady Formuła A = x p(x) q(x) Zmienna x występująca w p(x) jest zmienną związaną. Zmienna x występująca w q(x) jest zmienną wolną. Bardziej czytelna postać A A = x p(x) q(y)

Formuła zamknięta Definicja Formuła niezawierająca zmiennych wolnych jest nazywana formułą zamkniętą. Domknięcie uniwersalne Definicja Jeśli {x 1,..., x n } są wszystkimi zmiennymi wolnymi formuły A, to domknięciem uniwersalnym formuły A jest formuła x 1... x n A, Przykład A = x p(x) q(y) y( x p(x) q(y))

Domknięcie egzystencjalne Definicja Jeżeli {x 1,..., x n } są wszystkimi zmiennymi wolnymi formuły A, to domknięciem egzystencjalnym formuły A jest formuła x 1... x n A. Przykład A = x p(x) q(y) y( x p(x) q(y)) Drzewo wywodu dla formuły Czy poniższe wyrażenie jest formułą rachunku predykatów? ((p(x) q(y)) p(x)) p(x) form p(x) form p(x) p(x) q(y)

Główny operator formuły Definicja Jezeli A nie jest formułą atomową, to operator wystepujący w korzeniu drzewa wywodu A jest nazywany głównym operatorem formuły A. Drzewo struktury Przykład ((p(x) q(y)) p(x)) p(x) p(x) q(y) p(x) p(x)

Odwrotna Notacja Polska (ONP) Przykład (p(x) ((q(y) r(z)) (s(u) p(x)))) ( s) Czy można się pozbyć nawiasów? Tak. Podajemy najpierw argumenty a potem operator. ONP p(x) q(y) r(z) s(u) p(x) s Odwrotna Notacja Polska Dlaczego Odwrotna Notacja Polska? Jan Łukasiewicz (ur. 21 grudnia 1878 we Lwowie, zm. 13 lutego 1956 w Dublinie) polski logik, matematyk, filozof, rektor Uniwersytetu Warszawskiego. Twórca notacji polskiej (1920), sposobu zapisu wyrażeń arytmetycznych, który pozwala na całkowitą rezygnację z użycia nawiasów w wyrażeniach, jako że jednoznacznie określa kolejność wykonywanych działań. Notacja polska jest notacją prefiksową (operator poprzedza argumenty): ab oznacza a b.

Odwrotna Notacja Polska (Reversed Polish Notation - RPN) Odwrotna Notacja Polska postfiksowa została opracowana przez australijskiego naukowca Charlesa Hamblina jako odwrócenie beznawiasowej notacji polskiej Jana Łukasiewicza na potrzeby zastosowań informatycznych. Hamblin sugerował, aby notację tę nazwać Azciweisakul notation (Notacja Azciweisakuł Łukasiewicza pisane od tyłu). ONP jest używana w niektórych językach programowania (Forth, PostScript), w realizacji programowej arkuszy kalkulacyjnych i kompilatorów języków programowania oraz w kalkulatorach firmy Hewlett-Packard. ab oznacza a b. Algorytm obliczenia wartości wyrażenia ONP 1 Dla wszystkich symboli z wyrażenia ONP wykonuj: jeśli i-ty symbol jest liczbą, to odłóż go na stos, jeśli i-ty symbol jest operatorem to: zdejmij ze stosu jeden element (ozn. a), zdejmij ze stosu kolejny element (ozn. b), odłóż na stos wartość b operator a. jeśli i-ty symbol jest funkcją to: zdejmij ze stosu oczekiwaną liczbę parametrów funkcji (ozn. a 1...a n ) odłóż na stos wynik funkcji dla parametrów a 1...a n 2 Zdejmij ze stosu wynik.

Algorytm obliczenia wartości wyrażenia ONP Przykład (p(x) ((q(y) r(z)) (s(u) p(x)))) ( s) Zamiana wyrażenia zapisanego w notacji infiksowej na postać postfiksową (ONP) Gdy wczytany element jest: stałą lub nazwą zmiennej, to przesyłamy go na wyjście; ( to dopisujemy go na stos; ) to odczytaj ze stosu i prześlij na wyjście wszystkie operatory aż do nawiasu (, który należy odczytać, ale nie wysyłać na wyjście;,,,, to jeżeli priorytet operatora wczytywanego jest wyższy od priorytetu operatora znajdującego się w wierzchołku stosu lub stos jest pusty, to dopisz do stosu operator, a w przeciwnym razie odczytaj i prześlij na wyjście kolejne operatory z wierzchołka stosu o priorytecie większym lub równym priorytetowi wczytanego operatora, po czym wpisz do stosu operator. Na koniec, gdy wszystkie elementy zostały wczytane należy zdjąć wszystkie operatory ze stosu i przesłać je na wyjście.

Zamiana wyrażenia zapisanego w notacji infiksowej na postać postfiksową (ONP) Przykład (p(x) ((q(y) r(z)) (s(u) p(x)))) ( s) operator priorytet ( 0 ) 1 2 3 Indukcja strukturalna Aby wykazać, że każda formuła A F spełnia właściwość(a), wystarczy wykazać, że właściwość(p) zachodzi dla wszystkich atomów p; z założenia, że zachodzi właściwość(a), wynika, że zachodzi właściwość( A); z założenia, że zachodzi właściwość(a 1 ) oraz właściwość(a 2 ), wynika, że dla każdego operatora op zachodzi właściwość(a 1 opa 2 ). przypadek podstawowy krok indukcyjny

Indukcja strukturalna - przykład Zadanie Udowodnij, że dla każdej formuły rachunku zdań drzewo struktury jest grafem acyklicznym i spójnym. A co to jest graf acykliczny i spójny? graf acykliczny Graf jest acykliczny, gdy nie istnieje ciąg wierzchołków połączonych krawędziami będący cyklem, czyli taki, którego początek i koniec są w tym samym wierzchołku. A B C D E F G Indukcja strukturalna - przykład Zadanie Udowodnij, że dla każdej formuły rachunku zdań drzewo struktury jest grafem acyklicznym i spójnym. A co to jest graf acykliczny i spójny? A graf spójny Graf jest spójny, gdy dla każdej pary wierzchołków istnieje ścieżka, która je łączy. B C D E F G

Indukcja strukturalna - przykład Zadanie Udowodnij, że dla każdej formuły rachunku zdań drzewo struktury jest grafem acyklicznym i spójnym. Aby wykazać, że każda formuła A F spełnia właściwość (A), wystarczy wykazać, że właściwość(p) zachodzi dla wszystkich atomów p; z założenia, że zachodzi właściwość (A), wynika, że zachodzi właściwość ( A); z założenia, że zachodzi właściwość (A 1 ) oraz właściwość (A 2 ), wynika, że dla każdego operatora op zachodzi właściwość (A 1 opa 2 ). Zadania W danej formule rachunku predykatów wskazać zmienne wolne i związane. Podać domknięcie uniwersalne (egzystencjalne) danej formuły.