Znalosti z pohledu logiky Tutoriál Marie Duží a Petr Jirků 2004
Motto: Zeal without knowledge is a runaway horse. There is no royal road to learning. Znalosti 2004
Obsah Úvod Role logiky při chápání pojmu „znalosti“ Logické jazyky a systémy reprezentace znalostí Teoretické pozadí programovacích jazyků vhodných k vyjádření znalostí Znalosti 2004
Proč potřebujeme znalosti? Abychom rozuměli vnějšímu světu (implicitní znalosti) K vzájemné komunikaci (explicitní znalosti) Abychom byli schopni vhodného jednání i v kritických situacích (je potřebné odvodit odpovídající typ znalostí) V znalostech je síla! Znalosti 2004
Znalost je pravdivé ospravedlnitelné přesvědčení Co jsou znalosti? „…každému soudu, který odpovídá pravdě, propůjčuji jméno poznatku.“ Bernard Bolzano Znalost je pravdivé ospravedlnitelné přesvědčení Možné charakteristiky znalostí (získávání znalostí) (znalosti a priori vs. znalosti a posteriori, znalosti založené na obeznámenosti a znalosti založené na deskripci, výskyt vs. uspořádání znalostí, explicitní vs. implicitní znalosti, … Nositel znalostí (agent / skupina agentů) Znalost je ospravedlnitelné přesvědčení agenta A, že tvrzení P je pravdivé Znalosti 2004
Labyrint reprezentace znalostí Nástroje a přístupy UI Deklarativní a procedurální znalosti Implicitní a explicitní znalosti Usuzování (deduktivní, induktivní, abduktivní, monotónní vs. nemonotónní) Pravidla jestliže-pak, kognitivní struktury Produkční systémy Rámce, objekty, pojmy Neuronové sítě, sémantické sítě Plánování, inteligentní vyhledávání Jedinečné vs. vícenásobné reprezentace etc., etc. Znalosti 2004
Logika a znalosti Co můžeme očekávat od logiky? Jazyky pro reprezentaci znalostí klasické: výroková logika, predikátová logika prvního řádu, logika vyšších řádů, modální, vícehodnotové a fuzzy logiky, … Intenzionální logiky: sémantika možných světů Montague transparentní intenzionální logika hyperintenzionální logika Epistémické, doxastické logiky, logiky postojů Kripkeho sémantika modální, intenzionální logika „syntaktické“ přístupy Znalosti 2004
Logika a znalosti Co můžeme očekávat od logiky? Alenka ví, že je Bertík přesvědčen, že Cyril lže. Alenka věří, že Bertík je neomylný. Tedy: Alenka věří, že Cyril lže. Alenka ví, že 2 je 2 2 je jediné sudé prvočíslo Alenka ví, že 2 je jediné sudé prvočíslo??? Znalosti 2004
Různé logické systémy Otázky: Extenzionální systémy Co to znamená … A ví, že P? Sémantika Co z toho můžeme odvodit? Inferenční stroje Co / kdo je agent A? Skupiny agentů Extenzionální systémy Intenzionální systémy Hyperintenzionální systémy Znalosti 2004
Sémantika + (deduktivní, monotónní) inference Znalost: vztah mezi agentem A a významem tvrzení P Extenzionální systémy: P pravdivostní hodnota (T) A ví, že Václav Klaus je Václav Klaus Václav Klaus je prezidentem ČR A ví, že Václav Klaus je prezidentem ČR ??? Intenzionální systémy: P a propozice: ( ( T)) modální parametr (možné světy w), temporální parametr (t) Václav Klaus je Václav Klaus w t [P(w,t)] analytická pravda Václav Klaus je prezidentem ČR w t [P(w,t)] kontingentní empirická pravda Ano, ale... Znalosti 2004
Sémantika + deduktivní inference Hyperintenzionální systémy A ví, že 2 = 2 P 2 = jediné sudé prvočíslo P’ A ví, že 2 = jediné sudé prvočíslo??? P, P’ analytická pravda w t ... P konstrukce propozice: 0[2 = 2] 0[ 2 = x ([0Sudý x] [0Prvočíslo x]) ] Konstrukce není formule. Je to procedura, instrukce, jak dospět k ... Znalosti 2004
Predikátová logika prvního řádu (extenzionální) Není dostatečně jemná, ale... Přijatelná z pohledu automatického dokazování - úplná, částečně rozhodnutelná Podmnožiny formulí jsou rozhodnutelné (Kleene, Church: x … y … (C1 … Cn) Rezoluční metoda a unifikační algoritmus - podrobnosti dále Znalosti 2004
Shrnutí (obecná rezoluční metoda) (zhruba řečeno) Skolem: x P(x) P(a), x y P(x,y) P(x, f(x)) Klauzulární (Skolemova) forma AS z A: x1…xn (C1 ... Cm) AS ⊨ A. Jestliže A neobsahuje odvozené klauzule ‘…y…’, může se použít pro přímý důkaz, jinak pro nepřímý. (A l) (B 1’) ⊢ (Aσ Bσ), kde σ je nejobecnější unifikátor – substituce termů za proměnné tak, že lσ = l’σ Znalosti 2004
Příklad: nepřímý důkaz Jistý filosof odporuje všem filosofům. Tedy odporuje i sám sobě. x {[P(x) y (P(y) Q(x,y))] Q(x,x)} xy {P(x) [P(y) Q(x,y)] Q(x,x)} P(x) [P(y) Q(x,y)] Q(x,x) ⊢ Q(x,x) Q(x,x) ⊢ = {x/y} Znalosti 2004
Příklad: přímý důkaz Filosof A odporuje všem filosofům. Tedy A odporuje i sám sobě. [P(a) x (P(x) Q(a,x))] Q(a,a) P(a) [P(x) Q(a,x)] ⊢ Q(a,a) = {x/y} Znalosti 2004
Epistémické (doxastické) logiky K - Knows (znalost), B - Believes (přesvědčení) Axiomy Všechny tautologie výrokové logiky Axiom logické racionality - uzavřenost operátoru znalosti vůči implikaci (K) [K K( )] K Inferenční pravidla (MP) Modus ponens: , ⊢ (odvoď) (NEC) Necesitace: z formule odvoď K Znalosti 2004
Silnější epistémické logiky (T) K znalost implikuje pravdivost (D) K K znalost implikuje přesvědčení (4) K KK pozitivní introspekce (5) K K K negativní introspekce (předpoklad uzavřeného světa) K = B Znalosti 2004
Kripkeho sémantika možných světů: (intenzionální) Kripkeho model M je trojice <W, R, I> W – množina možných světů R WW binární relace dosažitelnosti I: F 2W funkce, která formulím přiřazuje podmnožiny W interpretace: (M,w) ⊨ právě když w I() Ki se chápe jako pravdivost ve všech světech přístupných agentovii, které jsou slučitelné s tím co ví: (M,w) ⊨ Ki právě když (M,w’) ⊨ pro všechny w’ taková, že w’ R w. Znalosti 2004
Použitelnost intenzionálních systémů Axiom T: w (w R w) reflexivita Axiom D: w w’ (w R w’) úplnost Axiom 4: R – reflexivita a tranzitivita Axiom 5: R – ekvivalence Důsledek: K K Cn() – epistémická nutnost / (epistémická klauzule) Agent buď „neví, že ví“, nebo se jedná o logicko-matematického génia Implicitní znalosti epistemic closure = epistémická nutnost, epistémická klauzule Znalosti 2004
Použitelnost intenzionálních systémů Epistémická nutnost vede k: A ví, že P; z P logicky vyplývá Q Tedy A ví, že Q Pohled zvnějšku: Jestliže agent A ví, že C1,…,Cn potom ví každé P, které nemůže být falsifikováno na základě {C1,…,Cn}. Jinými slovy, A by mohl bezpečně jednat, jako by platilo P pouze tehdy, jestliže si A tuto skutečnost explicitně uvědomuje. Konkrétně, pokud je agent dotázán na pravdivost P, agent nemůže odpovědět konsistentně a zároveň „implicitně vědět“, že P je pravdivé. Epistémická nutnost viz. slide 19 Znalosti 2004
Jsou implicitní znalosti věrohodné? Jestliže má systém zahrnovat introspekci (pozitivní i negativní), potom je tento systém použitelný za předpokladu, že: a) zanedbáme čas a další prostředky, které agent potřebuje k tomu, aby odvodil potřebné logické důsledky svých znalostí b) důkazový kalkul (inferenční stroj agenta) je úplný a rozhodnutelný Ne vždy reálné: agenti jsou vázáni na prostředky, výrazová síla vs. úplnost důkazu. Ne vždy reálné: agenti jsou vázáni na prostředky, výrazová síla vs. úplnost důkazu Znalosti 2004
Jak modelovat explicitní znalosti? Tvrzení P Propozice P označuje Intenzionální přístup: zvládá modality, ale stále je příliš hrubý. Potřebujeme „omezit inferenci“, tj. jemnější význam (A ví, že P; znalost vztahuje A k významu P!). Syntaktický přístup (k formuli, …): příliš jemný. Co zbývá? Znalosti 2004
Strukturované konstrukce: významy Výraz Význam Propozice vyjadřuje „jak“ identifikuje „co“ Význam: není to teoreticky daná entita, je to konstrukce (abstraktní procedura) strukturovaná z algoritmického hlediska. Je to návod (instrukce) na vyhodnocení pravdivostních podmínek daného stavu světa w, t. Potřebujeme se zabývat významy uvnitř teorie! Transparentní intenzionální logika (TIL) Význam: Uzavřená konstrukce – entita vyššího řádu Jazyk: modifikovaná verze typovaného -kalkulu nadpis Strukturované konstrukce: významy Znalosti 2004
Ontologie: dvojrozměrná (nekonečná) hierarchie entit Entity typu 1. řádu: nejsou strukturované z algoritmického hlediska, avšak mohou obsahovat části, prvky, ...) a) základní entity: (ne-funkcionální) prvky základních typů: = množina pravdivostních hodnot = universum diskurzu (množina individuí) = množina časových okamžiků (reálná čísla) = množina možných světů (maximální konzistentní množina faktů) b) (parciální) funkce (zobrazení): (1,…,n) značíme ( 1…n). (-) množiny jsou zobrazovány charakteristickou funkcí – (). basic entities, non-functional Unstructured entities (from the “algorithmic point of view”, though having parts, members, …) Znalosti 2004
Intenze vs. extenze (prvního řádu) -intenze: prvek typu () častěji (()), značíme -extenze: nejsou funkcemi z Příklady intenzí: student / () - vlastnost individuí prezident ČR / - individuální úřad Karel je student / – propozice věk / () – atribut (empirická funkce) Znalosti 2004
Algoritmicky strukturované procedury Entity typu druhého řádu: Konstrukce z entit typu prvního řádu, všechny spadají pod typ 1 Proměnné: x, y, z ... jakýkoli typ (nejenom individua!) Trivializace: 0X základní objekt X, funkce X Uzávěr: [ x1 ... xn C] Funkce / ( 1...n) 1 n Kompozice: [C X1 … Xn] Hodnota funkce ( 1...n) 1 n Entity typu třetího řádu: Konstrukce z entit typu prvního a druhého řádu, všechny spadají pod typ 2 atd. 3, 4, ... Znalosti 2004
významů – konstrukcí – procedur ‘Karel ví, že x děleno nulou není definováno.’ wt [0Víwt 0Karel 0[0Nedefinováno 0[x : 00]] ] konstrukce [0Nedefinováno 0[x : 00]] – zmíněno Naše znalosti, deduktivní (odvozovací) schopnosti se týkají zejména významů – konstrukcí – procedur nikoli pouze jejich výsledků – pravdivostních hodnot, intencí, propozic, ... Karel neví, že pravda Znalosti 2004
Máme zbavit agenta všech odvozovacích schopností? Agent je schopen jednat jakoby P bylo pravdivé wt [ 0Víwt 0A 0[0Nedefinováno 0[x : 00]] ] wt [ 0Víwt 0A 0[[0Nedefinováno 0[x : 00] ] c [0Nedefinováno c] ] c 1 Agent je schopen použít pravidlo existenční generalizace: wt [ 0Víwt 0A 0[ c [0Nedefinováno c] ] Instance axiomu logické racionality Znalosti 2004
Implicitní znalosti Intenzionální přístup je přijatelný, jestliže a) zanedbáme čas (a další prostředky) které agent potřebuje k odvození implicitních znalostí b) důkazový kalkul (inferenční stroj agenta) je úplný a rozhodnutelný: Logicko-matematický génius Předmět empirických znalostí The case of empirical knowledge - Předmět empirických znalostí Znalosti 2004
Explicitní znalosti Hyperintenzionální přístup: K / ( 1) (logicko-matematický idiot – zbaven…) Pravidlo explicitního uzávěru (all the rules explicitly) Agent A ví C1,...,Cn. D je odvoditelné z C1,...,Cn za použití pravidel R1,...,Rm. Agent A zná (užívá) pravidel R1,...,Rm. ––––––––––––––––––––––––––––––––––––––– Agent A ví, že D. Explicit-Closure Rule (all the rules explicitly) - Pravidlo explicitního uzávěru ? Znalosti 2004
K čemu nám to je? Rozvoj multiagentních inteligentních systémů Brát v potaz inferenční schopnosti jednotlivých agentů Boj za konzistenci! Teorie je nejdůležitějším krokem pro praxi (D.Björner, SOFSEM’86) Building up multi-agent intelligent systems - Rozvoj multiagentních inteligentních systémů There is nothing better for practise but a good theory - Teorie je nejdůležitějším krokem pro praxi Znalosti 2004
Další neklasické logiky Kondicionální logika Deontická logika Dynamická logika Erotetická logika (logika otázek) Intuicionistická logika Modální logika Vícehodnotová a fuzzy logika Parakonzistentní logika Parciální logika Temporální logika Znalosti 2004
Usuzování Hide not your talents, they for use were made. What’s a Sun-dial in the Shade? (Benjamin Franklin) Znalosti 2004
Klasická logická odvoditelnost (A. Tarski) F množina formulí Cn: P(F) P(F) operace na F taková, že Reflexivita X Cn(X) Monotónnost Jestliže X Y pak Cn(X) Cn(Y) Tranzitivita Cn(Cn(X)) = Cn(X) platí. Znalosti 2004
Různé typy vyplývání De-dukce In-dukce Ab-dukce …-dukce Znalosti 2004 nadpis vyplývání – inference Znalosti 2004
Dedukce (zachovává pravdivostní hodnotu, monotónní) Všichni králíci v klobouku jsou bílí. Tito králíci jsou z klobouku. Tedy: tito králíci jsou bílí. Pravidlo (premisa) Fakt (premisa) Fakt (závěr) Znalosti 2004
Indukce (zobecnění) Tito králíci jsou bílí. Tito králíci jsou z klobouku. Všichni králíci v klobouku jsou bílí. Fakt (premisa) Pravidlo (závěr) Znalosti 2004
Abdukce (Hledání příčin, „diagnostika“) Všichni králíci v klobouku jsou bílí. Tito králíci jsou bílí. Protože: Tito králíci jsou z klobouku. Pravidlo (premisa) Fakt (premisa) Fakt (závěr) Znalosti 2004
Abdukce (pokračování) B – Teoretické pozadí (deduktivně uzavřené) G – Množina formulí, která má být vysvětlena Jak najít množinu hypotéz H, pro kterou platí 1. (B H) |= G, nebo G Cn (B H) 2. (B H) je konsistentní 3. H A a zároveň G H = 4. (B |= G) 5. Neexistuje množina H´ H taková že, B H´ |= G nahrazení anglických slovních log. operátorů češtinou nebo symboly k bodu 2: je konsistentní nebo není inkonsistentní (sporná) Znalosti 2004
Abdukce (pokračování) Příklad (minimalita vysvětlení) p r p q r {p, q} vysvětluje r, ale není pro r minimální vysvětlení, protože tím je {p}. Fundovanost vysvětlení (Feyerabend) Vysvětlení je fundované, jestliže už není dále vysvětlitelné v rámci jiných vysvětlení. minimalita vysvětlení a fundovanost vysvětlení, jméno uvedené v závorce bude nejspíš Feyerabend (Paul F. http://plato.stanford.edu/entries/feyerabend/ ) místo původního Feyrabend Znalosti 2004
Abdukce (pokračování) Příklad r g w g g s Interpretace: s – boty jsou mokré, r – v noci pršelo, w – zavlažování bylo puštěné, g – tráva je mokrá Znalosti 2004
Síla abduktivních závěrů Jak dobrá je sama hypotéza H, nezávisle na alternativách Jak rozhodně hypotéza H překonává alternativy Jak úplné bylo prohledávání prostoru alternativ (Pragmatické důvody…) Znalosti 2004
Logika a programování Programovací jazyky pro logicky orientované báze znalostí sestávají z těchto komponent: K – jazyk formulí popisující BZ (fakta a/nebo pravidla) Q – jazyk otázek A – jazyk odpovědí QA Systém funkce answ: K x Q → A KB – knowledge base ZZ – základna znalostí Znalosti 2004
Typické příklady Teorie prvního řádu Relační databáze Jednoduché deduktivní databáze Disjunktivní deduktivní databáze Obecné logické programy Znalosti 2004
Teorie prvního řádu K = Q = A, In = klasická operace logického důsledku Cn (neboli relace, která je monotónní relací na množině formulí). Znalosti 2004
Relační databáze K = množina základních atomických formulí (pozitivních faktů), které jsou reprezentovány tabulkami či relacemi Q = SQL A = {ano, ne} Operace inference je nemonotónní, protože negace je interpretována jako množinový rozdíl v relační algebře Znalosti 2004
Jednoduché deduktivní databáze K = množina pozitivních faktů a pravidel tvaru A :- B1, … , BN. Kde A je atomická formule teorie prvního řádu, Bi jsou pozitivní literály a negace je interpretována jako neúspěch při odvozování Q = množina atomických formulí A = {ano, ne} In = lineární rezoluce s vytčeným prvkem Znalosti 2004
Disjunktivní databáze K = množina disjunkcí literálů a pravidel jako v jednoduchých deduktivních databázích Q = množina literálů A = {ano, ne} se substitucí In = lineární rezoluce Znalosti 2004
Obecné logické programy Jsou ekvivalentní uzavřeným teoriím prvního řádu K – množina obecných uzávěrů Q – množina obecných uzávěrů In – klasická logická relace dokazatelnosti Znalosti 2004
Hierarchie různých monotónních inferencí Logický systém (teorie) je perzistentní, když pravdivé (resp. nepravdivé) formule zůstávají pravdivými (nepravdivými), i když jsou přidány další formule. spolehlivý, jestliže pravdivost (resp. nepravdivost) formule v částečném modelu má za následek její pravdivost (resp. nepravdivost) i v každém informačním zúplnění. determinovaný, jestliže každá formule je determinovaná, tj. pravdivost nebo nepravdivost formule je jednoznačně určena v úplném modelu. Jestliže je systém perzistentní a determinovaný, pak je spolehlivý. nadpis hierarchie různých, rozdílných, odlišných, jiných, dalších monotónních odvoditelností Znalosti 2004
Dynamika znalostí Expanze (T, φ) Kontrakce (T, φ) Revize (T, φ) Postuláty racionality Peter Gärdenfors Znalosti 2004
Hierarchie různých nemonotónních inferencí I A formula φ is arguable when there is a fixpoint f of nm-Cn operation that includes it. A formula φ is conceivable when its negation is not derivable from T. Formula is doubtless, if its negation is not arguable. Slide 52 překlad arguable = obhajielná, dokazatelná, udržitelná conceivable = myslitelná, uvažovatelná doubtless = nezpochybnitelná Znalosti 2004
Hierarchie různých nemonotónních inferencí III PROVABLE ARGUABLE CONCEIVABLE PROVABLE DOUBTLESS CONCEIVABLE Slide 54 překlad Znalosti 2004
Hierarchie různých nemonotónních inferencí II Safe in T if φ Cn(T’) for all consitent (super theories) T’ such that T T’ Forseable if ¬ φ is not safe Plausible if T {φ} is consistent Uncontroversial if ¬φ is not safe Realizable if there is a super theory T’ such that it includes φ Undeniable if φ is not relizable Slide 53 překlad safe = bezpečný, jistý, důvěryhodný forseable = předvídatelná plausible = pravděpodobná, věrohodná, plauzibilní uncontroversial = nesporná, nekontroverzní realizable = uskutečnitelná, realizovatelná undeniable = nepopíratelná, nesporná Znalosti 2004
Hlavní nemonotónní logiky Logika pevného bodu (logika defaultů, modální nemonotónní logiky, epistémické logiky, TMS, RMS) Modelové preferenční logiky (předpoklad uzavřeného světa, omezení, kondicionální logika) Abduktivní usuzování (závislostní sítě, systémy aktualizace znalostí – TMS, RMS) Slide 55 Systém aktualizace znalostí Znalosti 2004
Logika defaultů R. Reiter, 1970 Defaultní pravidla jsou pravidla tvaru Jestliže α a jestliže také β mohou být konsistentně předpokládány, pak γ. (α ; β / γ) Znalosti 2004
Teorie defaultů T = [F, D] F množina formulí prvního řádu D konečná množina (uzavřených) defaultů Extenze teorií s defaulty: fixpoints of nonmonotonic consequence operation which involves all facts and it is closed to both logical rules and defaults definice extenze pevné body nemonotónní operace logického důsledku, která zahrnuje všechna fakta a je uzavřená jak na logické důsledky, tak na defaultová pravidla. mají být uzavřené na všechny aplikovatelné defaulty Znalosti 2004
Příklady I Teorie se dvěmi extenzemi F = {b a c} D = {(;a / a), (;b / b), (;c / c)} E1 = Cn( F {b}) E2 = Cn( F {a, c}) Znalosti 2004
Příklady II Teorie s jedinou extenzí F = { } D = {(;a / b); (;b / c), (;c / d)} E = Cn({b, d}) Znalosti 2004
Příklady III Teorie, která nemá žádnou extenzi F = { } D = {(true; a / a } F = {a} D = {(a; b c / c), (c; b / b)} Znalosti 2004
Různé typy defaultů Obecné defaulty (α ; β / γ) Seminormální defaulty (true; β γ / γ) Normální defaulty (true; γ / γ) zaručuje existenci extenze Znalosti 2004
Teorie algoritmů, rekurze, metajazyk pro Lisp Lambda kalkul I Teorie algoritmů, rekurze, metajazyk pro Lisp λ-kalkul: Alonzo Church 30. léta minulého století Axiomy a pravidla (Scott, Plotkin) Axiomy pro λ-abstrakci (λ x . M) = (λy . M [x / y] ) pokud y není volná v M -pravidlo ((λ x . M) N) = M [x / N ] -pravidlo Znalosti 2004
Lambda kalkul II Pravidla pro rovnost termů Reflexivita Symetrie Tranzitivnost Znalosti 2004
Lambda kalkul III Inferenční pravidla Z M = M´ odvoď NM = NM’ Z M = M´ odvoď MN = M’N Z M = M´ odvoď M = (λ x . M) = (λ x . M’) Znalosti 2004
Lambda kalkul IV Jestliže chápeme binární relace redukce (→) a rovnosti (=) jako primitivní (výchozí) termíny, můžeme λ-kalkul ekvivalentně popsat následujícími axiomy a pravidly (podle Barendreghta): (λ x . M) N → M[x / N]) (β redukce) (λ x . M x) → M (η redukce) Znalosti 2004
Implementace (jazyky pro reprezentaci znalostí) Jazyky pro UI (FRL, KRL, KL-One, ...) Logické programování Algoritmické programování Název Realizace nebo Implementace nebo... Znalosti 2004
Dva programovací jazyky založené na solidní formálně-logické teorii (Horn) fragment predikátové logiky (implementace: Prolog s různými extenzemi) Teorie rekurze a/nebo lambda kalkul (implementace: Lisp a jeho klony) Dva programovací jazyky založené na solidní formálně-logické teorii Dva programovací jazyky podložené solidní matematickou teorií Znalosti 2004
Lisp Jazyk pro zpracování seznamů S-výrazy; atomy, seznamy. Prázdný seznam; Manipulace se seznamy (car, cdr, cons) M-výrazy Definice rekurze Kondicionální výrazy Lambda výrazy Znalosti 2004
S-výrazy Symbolické výrazy: atomy (přirozená čísla, slova, seznamy atomů, podseznamy) Příklady (a b c) (1 3 5) (2 2 2) (2 2 2 ) ( ) nil (prázdný seznam) ((pondělí úterý) (a 1 b 2)) Prázdné místo (mezery navíc) se ignoruje, to však neplatí pro přebývající závorky. Ty mohou zcela změnit význam výrazu! lists of atoms or sublists - seznamy atomů, podseznamy Znalosti 2004
Manipulace se seznamy (car, cdr, cons) Car, cdr slouží k rozdělení a/nebo tvoření seznamů (car vrátí hlavičku tj. první prvek seznamu, cdr vrátí tělo seznamu, cons spojí hlavičku s tělem seznamu) Příklady (v M-notaci) car `(a b c) a cdr `(a b c) (b c) cdr cdr `(a b c) (c) cons `a nil a cons `(a) `(b c) (a b c) Znalosti 2004
Kondicionální výrazy Trojargumentové funkce (if predikát then-hodnota else-hodnota) Conditional expressions = Kondicionální nebo podmínkové výrazy anglické nebo české spojky -> jestliže predikát pak-hodnota ledaže by-hodnota Znalosti 2004
Lambda výrazy Lambda výrazy se používají k definování funkcí (lambda (seznam jmen parametrů) tělo funkce) Příklady ( lambda (x y) (cons y (cons x nil))) ( lambda (x y) cons y cons x nil A B) (B A) (f A B) (B A) nahradit slovo „lambda“ řeckým symbolem ? Znalosti 2004
Jak spojit funkční symbol s definicí funkce Define (f x y) cons y cons x nil (`lambda (f ) (f A B) `lambda (x y) cons y cons x nil) překlad formule? Znalosti 2004
Prolog Programming in logic 1972 A. Colmerauer, P. Roussel (Université Marseille-Luminy) 1977 Warren (University of Edinburgh) Logické symboly ⊨ ⊢ x Znalosti 2004
Programy s uspořádanou klauzulí Logické programování jako automatické odvozování Rezoluce a unifikace SLD-rezoluce a procedurální sémantika Herbrandovy modely Deklarativní sémantika a sémantika pevných bodů Definite Clause Programs Fixpoint Semantics Znalosti 2004
Některé užitečné logické ekvivalence x P x P x (P Q(x)) (P x Q(x)) A (B C) (A B) C A (B C) (A C) B (A B) (A B) (A B) (A B) A false A Slide 76 – anglické jazykove spojky jsem nahradil symboly Znalosti 2004
Logické programování je automatické usuzování Program = dané předpoklady A Výstup = požadovaný důsledek C Výpočet = dedukce C z A Význam programu = všechny důsledky A Meaning of program - Význam programu Znalosti 2004
(Standardní) logické programování K popisu znalostí používá FOL Při zpracovávání znalostí používá inferencí Má klauzulární formu Inferenční metodou je SLD-rezoluce Uspořádaná klauzule definite clause = uspořádaná klauzule FOL Znalosti 2004
Herbrandovy modely P logický program Doména H(P) = zakládá termíny jazyka v otázkách Herbrandova báze B(P) = množina všech atomických formulí vytvořených z H(P) a predikátové symboly jazyka Logický program pak počítá s termíny z H(P) a založí instance v B(P) termíny nebo termy Herbrandova báze Znalosti 2004
Predikát negace not(P) :- call(P), fail. not(P). Negace jako selhání při odvození. Jedná se o zdroj nemonotónnosti. Znalosti 2004
Příklad x je prvkem seznamu y prvek(X, [X | Y]). prvek(X, [ _ | Y]) :- prvek(X,Y). Znalosti 2004
Negace ve formálních systémech Pozitivní logika (bez negace) Negace jako inkonsistence Negace jako selhání Negace jako nedostatek informací Interní vs. externí negace Znalosti 2004
Deskripční logika Koncept a role deskripcí Restrikce na interpretaci rolí Konstruktory konceptů Konstruktory rolí Axiomy pojmy deskripční logiky... Znalosti 2004
Reference I Franz Baader – Diego Calvanese – Deborah McGuinness – Daniele Nardi – Peter Patel-Schneider (eds.): The Description Logic Handbook Theory, Implementation and Applications. Cambridge Univ. Press 2003. Gregory J. Chaitin: The Unknowable. Springer 1999. Melvin Fitting – Eva Orlowska (eds.): Beyond Two: Theory and Applications of Multiple-Valued Logic. Physica Verlag 2003. Peter Gärdenfors: Knowledge in Flux. Modelling the Dynamics of Epistemic States. The MIT Press 1988. Znalosti 2004
Reference II Jaakko Hintikka: Knowledge and Belief. An Introduction to the Logic of the two notions. Cornell Univ. Press 1962. Raymond Turner: Truth and Modality for Knowledge Representation. Pitman 1990. Reasoning about Knowledge. The MIT Press Russell, Bertrand: Logic and Knowledge. (Essays 1901-1950), edited by Robert Charles Marsh, Routledge, London and New York 1956. Znalosti 2004
Eventually — the End This tutorial has been prepared in a non-monotonic way by Mary and Peter as distinct from monotonic Mary and Paul. Znalosti 2004