Programovací jazyk Prolog

Rozměr: px
Začít zobrazení ze stránky:

Download "Programovací jazyk Prolog"

Transkript

1 Programovací jazyk Prolog doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / Miroslav.Benes@vsb.cz Obsah Logický program Fakt, dotaz, pravidlo Term, substituce Logická proměnná Rekurzivní pravidla Seznamy Programovací jazyk Prolog 2 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 1

2 Úvod Hlavní myšlenka: Využití počítače k vyvozování důsledků na základě deklarativního popisu Postup: reálný svět zamýšlená interpretace logický model program Výpočet - určení splnitelnosti či nesplnitelnosti cíle, případně včetně vhodných substitucí. Programovací jazyk Prolog 3 Logický program Fakta vek(petr, 30). vek(jana, 24). Pravidla starsi(x, Y) :- vek(x, V1), vek(y, V2), V1 > V2. Dotazy?- starsi(petr, jana). Yes Programovací jazyk Prolog 4 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 2

3 Co je to dotaz? Odpověď na dotaz vzhledem k programu = určení, zda je dotaz logickým důsledkem programu. Logické důsledky se odvozují aplikací dedukčních pravidel, např. P P (identita) Je-li nalezen fakt identický dotazu, dostaneme Yes. Odpověď No znamená pouze to, že z programu nelze platnost dotazu vyvodit. Programovací jazyk Prolog 5 Předpoklad uzavřeného světa zvire(pes). zvire(kocka).?- zvire(pes). Yes?- zvire(zirafa). No => Předpokládáme platnost pouze toho, co je uvedeno v programu. Programovací jazyk Prolog 6 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 3

4 Logická proměnná Představuje nespecifikovaný objekt Jméno začíná velkým písmenem?- vek(jana, X). X = 24.?- vek(pavla, X). No Existuje X takové, že vek(jana, X) lze odvodit z programu? Pokud ano, jaká je hodnota X? Programovací jazyk Prolog 7 Kvantifikátory likes(x, beer). Pro všechna X platí likes(x, beer).?- likes(x, beer). Existuje X takové, že likes(x, beer)? Programovací jazyk Prolog 8 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 4

5 Term Datová struktura definovaná rekurzivně: Konstanty a proměnné jsou termy Struktury jsou termy: funktor(arg1, arg2, ) funktor: jméno začínající malým písmenem argument: term Funktor je určen jménem a aritou f(t1, t2,, tn). f/n Příklad: z/0 s/1 z, s(z), s(s(z)), s(s(s(z))) Programovací jazyk Prolog 9 Substituce Základní term (ground term) neobsahuje proměnné s(s(z)) Substituce Konečná množina dvojic ve tvaru X i =t i Aplikace substituce θ na term A Aθ f(x, a) {X=g(z), Y=b} = f(g(z), a) Instance termu A je instancí B, existuje-li substituce θ taková, že A = Bθ f(g(z), a) je instancí termu f(x, a) Programovací jazyk Prolog 10 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 5

6 Konjunktivní dotazy?- zvire(pes), zvire(kocka). Yes Sdílení proměnných:?- vek(x, V), vek(y, V). Existují X a Y se stejným věkem? Programovací jazyk Prolog 11 Pravidla A :- B 1, B 2,, B n. A = hlava pravidla B 1, B 2,, B n = tělo pravidla syn(x, Y) :- otec(y, X), muz(x). deda(x, Y) :- otec(x, Z), otec(z, Y). Proměnné jsou univerzálně kvantifikované. Platnost proměnných je celé pravidlo. Programovací jazyk Prolog 12 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 6

7 Rekurzivní pravidla Definice grafu edge(a, b). edge(a, c). edge(b, d). edge(c, d). edge(d, e). edge(f, g). connected(n, N). connected(n1, N2) :- edge(n1, L), connected(l, N2). b a d e c f g Programovací jazyk Prolog 13 Rekurzivní pravidla Přirozená čísla: nat(z). nat(s(x)) :- nat(x). leq(z, X) :- nat(x). leq(s(x), s(y)) :- leq(x, Y). add(z, X, X). add(s(x), Y, s(z)) :- add(x, Y, Z). Programovací jazyk Prolog 14 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 7

8 Pracujeme s relacemi! add(s(z), s(z), X). X=s(s(z)) add(s(z), X, s(s(z))). X=s(z) add(x, Y, s(s(z))). X=z Y=s(s(z)) ; X=s(z) Y=s(z) ; X=s(s(z)) Y=z ; No Programovací jazyk Prolog 15 Seznamy list([]). list([x Xs]) :- list(xs). member(x,[x Xs]). member(x,[y Ys]) :- member(x,ys).?- member(b, [a,b,c]).?- member(x, [a,b,c]).?- member(b, X) Programovací jazyk Prolog 16 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 8

9 Úkol Vytvořte predikát times/3 reprezentující operaci násobení Vytvořte predikáty even/1 a odd/1 pro ověření, zda je zadané číslo sudé, resp. liché. Vytvořte predikát prefix/2 pro zjištění, zda je jeden seznam prefixem druhého seznamu. Programovací jazyk Prolog 17 (c) Miroslav Beneš, Katedra informatiky FEI VŠB-TU Ostrava 9

Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David

Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David Úvod do Prologu Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David Warren (Warren Abstract Machine) implementace

Více

Logické programování

Logické programování 30. října 2012 Osnova Principy logického programování 1 Principy logického programování 2 3 1 Principy logického programování 2 3 Paradigmata programování Strukturované programování Procedurální programování

Více

Logické programování I

Logické programování I Logické programování I PROLOG Program popisuje "svět" Prologu = databáze faktů a pravidel (tzv. klauzulí). fakta: predikát(arg1, arg2,...argn). cíle:?- predikát(arg1, arg2,...argn). pravidla: hlava :-

Více

platné nejsou Sokrates je smrtelný. (r) 1/??

platné nejsou Sokrates je smrtelný. (r) 1/?? Predikátová logika plně přejímá výsledky výrokové logiky zabývá se navíc strukturou jednotlivých jednoduchých výroků na základě této analýzy lze odvodit platnost některých výroků, které ve výrokové logice

Více

Klauzulární logika. úvod. Šárka Vavrečková. 20. října Ústav informatiky Filozoficko-Přírodovědecká fakulta Slezské univerzity, Opava

Klauzulární logika. úvod. Šárka Vavrečková. 20. října Ústav informatiky Filozoficko-Přírodovědecká fakulta Slezské univerzity, Opava Klauzulární logika úvod Šárka Vavrečková Ústav informatiky Filozoficko-Přírodovědecká fakulta Slezské univerzity, Opava 20. října 2008 Klauzulární logika Hlavní vlastnosti pracujeme s klauzulemi, které

Více

Výroková a predikátová logika - VI

Výroková a predikátová logika - VI Výroková a predikátová logika - VI Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VI ZS 2017/2018 1 / 24 Predikátová logika Úvod Predikátová logika Zabývá

Více

Logické programy Deklarativní interpretace

Logické programy Deklarativní interpretace Logické programy Deklarativní interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 7 1 Algebry. (Interpretace termů) Algebra J pro jazyk termů L obsahuje Neprázdnou

Více

Predikátová logika. prvního řádu

Predikátová logika. prvního řádu Predikátová logika prvního řádu 2 Predikát Predikát je n-ární relace - vyjadřuje vlastnosti objektů a vztahy mezi objekty - z jednoduchého výroku vznikne vypuštěním alespoň jednoho jména objektu (individua)

Více

Logické programování

Logické programování Logické programování Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 1 1 Prolog a Logické programování Prolog vznikl jako programovací jazyk v Marseille 1970, jeho autorem

Více

Výroková a predikátová logika - XII

Výroková a predikátová logika - XII Výroková a predikátová logika - XII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XII ZS 2018/2019 1 / 15 Rezoluční metoda v PL Rezoluční důkaz Obecné

Více

Rovnost lze vyjádřit jako predikát, např. můžeme zvolit, že P(x, y) reprezentujetvrzení xjerovnoy.

Rovnost lze vyjádřit jako predikát, např. můžeme zvolit, že P(x, y) reprezentujetvrzení xjerovnoy. Rovnost Jedním z nejdůležitějších druhů relací je rovnost(identita). Prvkyxayjsousirovny,cožzapisujeme x =y, jestližesejednáojedenatentýžprvek. Rovnost lze vyjádřit jako predikát, např. můžeme zvolit,

Více

Logika a logické programování

Logika a logické programování Logika a logické programování témata ke zkoušce Poslední aktualizace: 16. prosince 2009 Zkouška je písemná, skládá se obvykle ze sedmi otázek (může být více nebo méně, podle náročnosti otázek), z toho

Více

Predikátová logika [Predicate logic]

Predikátová logika [Predicate logic] Predikátová logika [Predicate logic] Přesněji predikátová logika prvého řádu. Formalizuje výroky o vlastnostech předmětů (entit) a vztazích mezi předměty, které patří do dané předmětné oblasti univerza.

Více

Domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta

Domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta Domény Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 10 1 Typy programů v čistém Prologu je možné uspořádat podle různých pohledů. Zajímavá je charakteristika podle domén,

Více

klauzulí deklarativní (specifikace programu je přímo programem) popel, glum & nepil 1/18

klauzulí deklarativní (specifikace programu je přímo programem) popel, glum & nepil 1/18 IB101, log programování, Prolog Logické programování logický program: libovolná konečná množina programových Hornových klauzulí odvozování (dokazování) cílů založeno na SLD-rezoluci deklarativní (specifikace

Více

Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz

Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz Jednoduché úsudky, kde VL nestačí Všechny opice mají rády banány Judy je opice Judy má ráda banány Z hlediska VL

Více

Klasická predikátová logika

Klasická predikátová logika Klasická predikátová logika Matematická logika, LS 2012/13, závěrečná přednáška Libor Běhounek www.cs.cas.cz/behounek/teaching/malog12 PřF OU, 6. 5. 2013 Symboly klasické predikátové logiky Poznámky Motivace

Více

Složitější domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta

Složitější domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta Složitější domény Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 11 1 V této části se budeme zabývat seznamy a binárními stromy. Naším cílem není tyto datové struktury podrobně

Více

Substituce. Petr Štěpánek. S využitím materialu Krysztofa R. Apta. Logické programování 2 1

Substituce. Petr Štěpánek. S využitím materialu Krysztofa R. Apta. Logické programování 2 1 Substituce Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 2 1 Algebra termů Předpokládáme, že je dán jazyk termů. L, definovali jsme množinu jeho Zavedeme některé užitečné

Více

Sémantika predikátové logiky

Sémantika predikátové logiky Sémantika predikátové logiky pro analýzu sémantiky potřebujeme nejprve specifikaci jazyka (doména, konstanty, funkční a predikátové symboly) příklad: formální jazyk s jediným binárním predikátovým symbolem

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky

Více

Operace na datových strukturách

Operace na datových strukturách Operace na datových strukturách Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Operace na datových strukturách Binární stromy Reprezentace grafů Úvod do umělé inteligence 2/12 1

Více

Výroková a predikátová logika - X

Výroková a predikátová logika - X Výroková a predikátová logika - X Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - X ZS 2018/2019 1 / 16 Rozšiřování teorií Extenze o definice Rozšiřování

Více

Složitosti základních operací B + stromu

Složitosti základních operací B + stromu Složitosti základních operací B + stromu Radim Bača VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky ŠKOMAM 2010-1- 28/1/2010 Složitosti základních operací B +

Více

Modely Herbrandovské interpretace

Modely Herbrandovské interpretace Modely Herbrandovské interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 8 1 Uvedli jsme termové interpretace a termové modely pro logické programy a také nejmenší

Více

Operace na datových strukturách

Operace na datových strukturách Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Operace na datových strukturách Binární stromy Reprezentace grafů Úvod do umělé inteligence 2/12 1 / 26 Operace na datových strukturách

Více

Prolog 1-1. Rodinné vztahy pomocí Prologu:

Prolog 1-1. Rodinné vztahy pomocí Prologu: Prolog 1-1 - Prolog znamená programování v logice - namísto otázky jak se má získat určitá hodta se ptáme co platí mezi objekty - vhodný jazyk pro úlohy kde nás zajímají vztahy mezi objekty - namísto definic

Více

Matematická logika. Miroslav Kolařík

Matematická logika. Miroslav Kolařík Matematická logika přednáška šestá Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní matematika

Více

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce Marie Duží marie.duzi@vsb.cz 1 Úvod do teoretické informatiky (logika) Naivní teorie množin Co je to množina? Množina je soubor prvků

Více

Matematická logika. Rostislav Horčík. horcik

Matematická logika. Rostislav Horčík.    horcik Matematická logika Rostislav Horčík horcik@math.feld.cvut.cz horcik@cs.cas.cz www.cs.cas.cz/ horcik Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 1 / 20 Predikátová logika Motivace Výroková

Více

UDL 2004/2005 Cvičení č.6 řešení Strana 1/5

UDL 2004/2005 Cvičení č.6 řešení Strana 1/5 UDL 2004/2005 Cvičení č.6 řešení Strana 1/5 Opakování pojmů relace a funkce Relace R nad množinami A, B je podmnožina kartézského součinu: R A B Kartézský součin množin A = {a 1, a 2,, a 4 }, B = {b 1,

Více

Skolemizace. x(x + f(x) = 0). Interpretace f unární funkce, která pro daný

Skolemizace. x(x + f(x) = 0). Interpretace f unární funkce, která pro daný Skolemizace převod formulí na formule bez existenčních kvantifikátorů v jazyce, který je rozšířen o tzv. Skolemovy funkce; zachovává splnitelnost idea převodu: formuli x 1... x n yp (x 1,..., x n, y) transformujeme

Více

Programovací jazyk Prolog

Programovací jazyk Prolog Programovací jazyk Prolog Logické programování Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 1. prosince 2008 Prolog Co je

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

IB015 Neimperativní programování. Neimperativní programování v Prologu. Jiří Barnat

IB015 Neimperativní programování. Neimperativní programování v Prologu. Jiří Barnat IB015 Neimperativní programování Neimperativní programování v Prologu Jiří Barnat Logické programování a Prolog IB015 Neimperativní programování 09 str. 2/35 Logické programování Deklarativní programovací

Více

Výroková a predikátová logika - VII

Výroková a predikátová logika - VII Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2018/2019 1 / 15 Platnost (pravdivost) Platnost ve struktuře

Více

Okruh č.3: Sémantický výklad predikátové logiky

Okruh č.3: Sémantický výklad predikátové logiky Okruh č.3: Sémantický výklad predikátové logiky Predikátová logika 1.řádu formalizuje úsudky o vlastnostech předmětů a vztazích mezi předměty pevně dané předmětné oblasti (univerza). Nebudeme se zabývat

Více

Stromy. Příklady. Rekurzivní datové struktury. Základní pojmy

Stromy. Příklady. Rekurzivní datové struktury. Základní pojmy Základní pojmy Stromy doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Graf uzly hrany orientované / neorientované Souvislý

Více

Klauzulární logika. Znalostní báze. Šárka Vavrečková

Klauzulární logika. Znalostní báze. Šárka Vavrečková Klauzulární logika Znalostní báze Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 26. listopadu 2007 (Znalostní báze) Klauzulární

Více

Úvod do logiky (PL): analýza vět přirozeného jazyka

Úvod do logiky (PL): analýza vět přirozeného jazyka Logika: systémový rámec rozvoje oboru v ČR a koncepce logických propedeutik pro mezioborová studia (reg. č. CZ.1.07/2.2.00/28.0216, OPVK) Úvod do logiky (PL): analýza vět přirozeného jazyka doc. PhDr.

Více

Rezoluční kalkulus pro logiku prvního řádu

Rezoluční kalkulus pro logiku prvního řádu AD4M33AU Automatické uvažování Rezoluční kalkulus pro logiku prvního řádu Petr Pudlák Logika prvního řádu (Někdy nepřesně nazývaná predikátová logika.) Výhody Vyšší vyjadřovací schopnost jazyka, V podstatě

Více

Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model

Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model Databázové systémy Tomáš Skopal - relační model * relační kalkuly Osnova přednášky relační kalkuly doménový n-ticový Relační kalkuly využití aparátu predikátové logiky 1. řádu pro dotazování rozšíření

Více

Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Logika pro každodenní přežití Stefan Ratschan Katedra číslicového návrhu Fakulta informačních technologíı České vysoké učení technické v Praze Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Více

Částečná korektnost. Petr Štěpánek. S využitím materialu Krysztofa R. Apta

Částečná korektnost. Petr Štěpánek. S využitím materialu Krysztofa R. Apta Částečná korektnost Petr Štěpánek S využitím materialu Krysztofa R. Apta 2007 Logické programování 14 1 Částečná korektnost je vlastností programu a znamená, že program vydává korektní výsledky pro dané

Více

Logika. 5. Rezoluční princip. RNDr. Luděk Cienciala, Ph. D.

Logika. 5. Rezoluční princip. RNDr. Luděk Cienciala, Ph. D. Logika 5. Rezoluční princip RNDr. Luděk Cienciala, Ph. D. Tato inovace předmětu Úvod do logiky je spolufinancována Evropským sociálním fondem a Státním rozpočtem ČR, projekt č. CZ. 1.07/2.2.00/28.0216,

Více

Umělá inteligence I. Roman Barták, KTIML.

Umělá inteligence I. Roman Barták, KTIML. Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Už umíme používat výrokovou logiku pro reprezentaci znalostí a odvozování důsledků. Dnes Dnes zopakujeme

Více

Zastavování výpočtů (Terminace)

Zastavování výpočtů (Terminace) Zastavování výpočtů (Terminace) Petr Štěpánek S využitím materialu Krysztofa R. Apta 2007 Logické programování 12 1 Analýza zastavování (terminace) výpočtů je součastí verifikace programů v Prologu. Není

Více

Využití principů, ale vlastní naprogramování řešících

Využití principů, ale vlastní naprogramování řešících Programování Cvičení 1 s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Využití CSP Využití principů,

Více

Denotační sémantika. Marek Běhálek

Denotační sémantika. Marek Běhálek Denotační sémantika Marek Běhálek Katedra informatiky, FEI, Vysoká škola báňská Technická universita Ostrava 17. listopadu 15, Ostrava-Poruba 708 33 Česká republika 29. listopadu 2015 M. Běhálek (VŠB-TUO)

Více

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / Správa paměti doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Motivace Úrovně správy paměti. Manuální

Více

Predikátová logika. Teoretická informatika Tomáš Foltýnek

Predikátová logika. Teoretická informatika Tomáš Foltýnek Predikátová logika Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz strana 2 Opakování z minulé přednášky Z čeho se skládá jazyk výrokové logiky? Jaká jsou schémata pro axiomy VL? Formulujte

Více

1 Pravdivost formulí v interpretaci a daném ohodnocení

1 Pravdivost formulí v interpretaci a daném ohodnocení 1 Pravdivost formulí v interpretaci a daném ohodnocení Než uvedeme konkrétní příklady, zopakujme si definici interpretace, ohodnocení a pravdivosti. Necht L je nějaký jazyk. Interpretaci U, jazyka L tvoří

Více

5.8 Induktivní logické programování

5.8 Induktivní logické programování 5.8 Induktivní logické programování Zatím jsme se pohybovali ve světě, kde příklady i hypotézy byly popsány hodnotami atributů 1. Existuje ale ještě jiný, složitější popis a sice popis pomocí predikátové

Více

Programování v čistém Prologu

Programování v čistém Prologu Programování v čistém Prologu Petr Štěpánek S využitím materiálu Krysztofa R. Apta 2006 Logické programování 9 1 Ukázali jsme, že logické programy mohou sloužit k výpočtům. Volně řečeno, logiské programz

Více

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek Otázka 06 - Y01MLO Zadání Predikátová logika, formule predikátové logiky, sentence, interpretace jazyka predikátové logiky, splnitelné sentence, tautologie, kontradikce, tautologicky ekvivalentní formule.

Více

1 Predikátová logika. 1.1 Syntax. jaký mohou mít formule význam (sémantiku). 1. Logických symbolů: 2. Speciálních (mimologických) symbolů:

1 Predikátová logika. 1.1 Syntax. jaký mohou mít formule význam (sémantiku). 1. Logických symbolů: 2. Speciálních (mimologických) symbolů: 1 Predikátová logika 1.1 Syntax Podobně jako ve výrokové logice začneme nejprve se syntaxí predikátové logiky, která nám říká, co jsou správně utvořené formule predikátové logiky. V další části tohoto

Více

Occur-check (Test konfliktu proměnných)

Occur-check (Test konfliktu proměnných) Occur-check (Test konfliktu proměnných) Petr Štěpánek S využitím materialu Krysztofa R. Apta 2007 Logické programování 13 1 Při výpočtech v Prologu většina implementací používá zjednodušený algoritmus

Více

Výroková a predikátová logika - VII

Výroková a predikátová logika - VII Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2013/2014 1 / 21 Sémantika PL Teorie Vlastnosti teorií Teorie

Více

Komponenty v.net. Obsah přednášky

Komponenty v.net. Obsah přednášky doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Rozdíl mezi COM a.net Distribuce komponent Programování

Více

Rekurze. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Rekurze. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12. Rekurze doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Rekurze 161 / 344 Osnova přednášky

Více

4.2 Syntaxe predikátové logiky

4.2 Syntaxe predikátové logiky 36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a

Více

Přednáška 2: Formalizace v jazyce logiky.

Přednáška 2: Formalizace v jazyce logiky. Přednáška 2: Formalizace v jazyce logiky. Marie Duží marie.duzi@vsb.cz Úvod do teoretické informatiky (logika) Dva základní logické systémy: Výroková logika a predikátová logika. řádu. Výroková logika

Více

Seminární práce z Teorie ICT

Seminární práce z Teorie ICT ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE Provozně ekonomická fakulta Seminární práce z Teorie ICT Implementace logické hádanky v Prologu Autor : Petr Pechek 1 Popis zvoleného problému Mým úkolem bylo vyřešit

Více

2.5 Rezoluční metoda v predikátové logice

2.5 Rezoluční metoda v predikátové logice 2.5. Rezoluční metoda v predikátové logice [101104-1520] 19 2.5 Rezoluční metoda v predikátové logice Rezoluční metoda v predikátové logice je obdobná stejnojmenné metodě ve výrokové logice. Ovšem vzhledem

Více

Matematická logika. Miroslav Kolařík

Matematická logika. Miroslav Kolařík Matematická logika přednáška desátá Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. Obsah 1 Úvod do modální logiky 2 Logické programování a Prolog 3

Více

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13. Grafy doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Grafy 104 / 309 Osnova přednášky Grafy

Více

Pojem algoritmus. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

Pojem algoritmus. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Pojem algoritmus doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Pojem algoritmus 54 / 344

Více

š Á š š ů š ý š Č Š Č ň ý ž ů ý ž ů Č ý ž ú Ň Š Í š ý ú ý š š š ý š š š š ý š š š Ů š š š š ý ů ů š ý ň š š š ž ů ň š ž ž ň ý ž š ý ý š ý š ý ú ů ž ý š ž š ú ú š ý ň ň š ý š š š Ú ú š ý ů š š š š š š š

Více

Poslední nenulová číslice faktoriálu

Poslední nenulová číslice faktoriálu Poslední nenulová číslice faktoriálu Kateřina Bambušková BAM015, I206 Abstrakt V tomto článku je popsán a vyřešen problém s určením poslední nenulové číslice faktoriálu přirozeného čísla N. Celý princip

Více

KMA/MDS Matematické důkazy a jejich struktura

KMA/MDS Matematické důkazy a jejich struktura Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.0141 KMA/MDS Matematické důkazy a jejich struktura Seminář 3 Predikátový počet Uvažujme následující úsudek.

Více

Predik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16

Predik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16 Predikátová logika - přednáška 3 6. 1. 2015 () Predikátová logika - přednáška 3 6. 1. 2015 1 / 16 Věta (o dedukci) Bud L jazyk, T teorie pro L, ϕ L-sentence a ψ L-formule. Pak Věta (o kompaktnosti) T ϕ

Více

Reprezentace znalostí. Katedra kybernetiky, ČVUT v Praze.

Reprezentace znalostí. Katedra kybernetiky, ČVUT v Praze. Reprezentace znalostí Vladimír Mařík Katedra kybernetiky, ČVUT v Praze http://cyber.felk.cvut.cz/ preprezentace znalostí V paměti počítače požadavky na modularitu (M) asociativnost (A) Čtyři základní formalizmy:

Více

Cvičení ke kursu Vyčíslitelnost

Cvičení ke kursu Vyčíslitelnost Cvičení ke kursu Vyčíslitelnost (23. prosince 2017) 1. Odvoďte funkci [x, y, z] x y z ze základních funkcí pomocí operace. 2. Dokažte, že relace nesoudělnosti je 0. Dokažte, že grafy funkcí Mod a Div jsou

Více

0.1 Funkce a její vlastnosti

0.1 Funkce a její vlastnosti 0.1 Funkce a její vlastnosti Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost (m) čas (t) výše úrokové sazby v bance (i) cena

Více

Matematika (KMI/PMATE)

Matematika (KMI/PMATE) Úvod do matematické analýzy Funkce a její vlastnosti Funkce a její vlastnosti Veličina Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Funkce a její

Více

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing)

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing) Třída Character Práce s textem doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz reprezentuje objekty zapouzdřující hodnotu

Více

Binární vyhledávací stromy II

Binární vyhledávací stromy II Binární vyhledávací stromy II doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 19. března 2019 Jiří Dvorský (VŠB TUO) Binární vyhledávací

Více

1 REZOLUČNÍ FORMÁLNÍ DŮKAZY

1 REZOLUČNÍ FORMÁLNÍ DŮKAZY Vážená kolegyně / vážený kolego, součástí Vašeho rozšiřujícího studia informatiky je absolvování předmětu Logika pro učitele 2, jehož cílem je v návaznosti na předmět Logika pro učitele 1 seznámení se

Více

PŘEDNÁŠKA 7 Kongruence svazů

PŘEDNÁŠKA 7 Kongruence svazů PŘEDNÁŠKA 7 Kongruence svazů PAVEL RŮŽIČKA Abstrakt. Definujeme svazové kongruence a ukážeme jak pro vhodné binární relace svazu ověřit, že se jedná o svazové kongruence. Popíšeme svaz Con(A) kongruencí

Více

popel, glum & nepil 16/28

popel, glum & nepil 16/28 Lineární rezoluce další způsob zjemnění rezoluce; místo stromu směřujeme k lineární struktuře důkazu Lineární rezoluční odvození (důkaz) z Ë je posloupnost dvojic ¼ ¼ Ò Ò taková, že Ò ½ a 1. ¼ a všechna

Více

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014 Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 204 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia

Více

Úvod do TI - logika Logické programování, PROLOG (10.přednáška) Marie Duží

Úvod do TI - logika Logické programování, PROLOG (10.přednáška) Marie Duží Úvod do TI - logika Logické programování, PROLOG (10.přednáška) Marie Duží marie.duzi@vsb.cz Základy (logika) Prologu Metoda (čistého) logického programování je speciálním případem obecné rezoluční metody.

Více

Syntaxí řízený překlad

Syntaxí řízený překlad Syntaxí řízený překlad Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 27. listopadu 2008 Definice Překlad z jazyka L 1 do jazyka L 2 je definován množinou

Více

Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz. Algebra Struktury s jednou operací

Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz. Algebra Struktury s jednou operací Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Algebra Struktury s jednou operací Teoretická informatika 2 Proč zavádíme algebru hledáme nástroj pro popis objektů reálného světa (zejména

Více

Úvod do teoretické informatiky

Úvod do teoretické informatiky Úvod do teoretické informatiky Zdeněk Sawa Katedra informatiky, FEI, Vysoká škola báňská Technická universita Ostrava 17. listopadu 15, Ostrava-Poruba 708 33 Česká republika 11. února 2018 Z. Sawa (VŠB-TUO)

Více

Úvod do programovacích jazyků (Java)

Úvod do programovacích jazyků (Java) Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích

Více

Tableaux metody. Jiří Vyskočil 2011

Tableaux metody. Jiří Vyskočil 2011 Tableaux metody Jiří Vyskočil 2011 Tableau [tabló] metoda Tableau metoda je další oblíbená metoda užívaná pro automatické dokazování vět v predikátové logice, ale i v dalších (modálních, temporálních,

Více

Poznámka. Je-li f zobrazení, ve kterém potřebujeme zdůraznit proměnnou, píšeme f(x) (resp. f(y), resp. f(t)) je zobrazení místo f je zobrazení.

Poznámka. Je-li f zobrazení, ve kterém potřebujeme zdůraznit proměnnou, píšeme f(x) (resp. f(y), resp. f(t)) je zobrazení místo f je zobrazení. 2. ZOBRAZENÍ A FUNKCE 2.1 Zobrazení 2. 1. 1 Definice: Nechť A a B jsou množiny. Řekneme že f je zobrazení množiny A do množiny B jestliže (i) f A B (ii) ke každému z množiny A eistuje právě jedno y z množiny

Více

Spojová implementace lineárních datových struktur

Spojová implementace lineárních datových struktur Spojová implementace lineárních datových struktur doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB

Více

Hilbertovský axiomatický systém

Hilbertovský axiomatický systém Hilbertovský axiomatický systém Predikátová logika H 1 Šárka Vavrečková Ústav informatiky, FPF SU Opava Poslední aktualizace: 24. října 2008 Specifikace H 1 Jazyk L H1 přejímáme jazyk predikátové logiky

Více

(FAPPZ) Petr Gurka aktualizováno 12. října Přehled některých elementárních funkcí

(FAPPZ) Petr Gurka aktualizováno 12. října Přehled některých elementárních funkcí 1. Reálná funkce reálné proměnné, derivování (FAPPZ) Petr Gurka aktualizováno 12. října 2011 Obsah 1 Přehled některých elementárních funkcí 1 1.1 Polynomické funkce.......................... 1 1.2 Racionální

Více

Bakalářská matematika I

Bakalářská matematika I do předmětu Mgr. Jaroslav Drobek, Ph. D. Katedra matematiky a deskriptivní geometrie Bakalářská matematika I Podmínky absolvování předmětu Zápočet Zkouška 1 účast na přednáškách alespoň v minimálním rozsahu,

Více

Architektura COM. Historie Component Object Model (COM) Komunikace s komponentami Rozhraní komponent COM komponenty v.net.

Architektura COM. Historie Component Object Model (COM) Komunikace s komponentami Rozhraní komponent COM komponenty v.net. Architektura COM doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Historie Component Object Model (COM)

Více

é é ň ř Í ř é š ř ů š é é ň Č Č ú Č ú š ú é é é ř ý ú ů é š ú š ů ý š ř ř ř ř š é ř é ř é é š ř š é ř š ý ů ř ý ř é ř é é ř ř š ý ř é ý ý é é ř é é ů ř ř ř š ř ý ř é ý ů ů é é ň ř é Č Í ýš ř ú é š é é

Více

Organizace. Zápočet: test týden semestru (pátek) bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část

Organizace. Zápočet: test týden semestru (pátek) bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část Matematika I 1/15 2/15 Organizace Zápočet: test 6. + 11. týden semestru (pátek) 80 bodů 50 79 bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část www.vscht.cz/mat Výuka www.vscht.cz/mat/jana.nemcova

Více

I) Příklady (převeďte následující věty do formulí PL1 a ověřte jejich ekvivalenci pomocí de Morganových zákonů):

I) Příklady (převeďte následující věty do formulí PL1 a ověřte jejich ekvivalenci pomocí de Morganových zákonů): I) Příklady (převeďte následující věty do formulí PL1 a ověřte jejich ekvivalenci pomocí de Morganových zákonů): 1. Všechna prvočísla větší než 2 jsou lichá. Je-li prvočíslo větší než 2, pak je liché.

Více

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů. Základní symboly - písmena A B C Y Z a b c y z - číslice 0 1 2 9 - speciální symboly + - * / =., < > = a další - klíčová slova and array begin case const a další Klíčová slova jsou chráněnými útvary,

Více

FUNKCE POJEM, VLASTNOSTI, GRAF

FUNKCE POJEM, VLASTNOSTI, GRAF FUNKCE POJEM, VLASTNOSTI, GRAF Zavedení pojmu funkce funkce Funkce f na množině D R je předpis, který každému číslu x z množiny D přiřazuje právě jedno reálné číslo y z množiny R. Množina D se nazývá definiční

Více

Přijímací zkouška - matematika

Přijímací zkouška - matematika Přijímací zkouška - matematika Jméno a příjmení pište do okénka Číslo přihlášky Číslo zadání 1 Grafy 1 Pro který z následujících problémů není znám žádný algoritmus s polynomiální časovou složitostí? Problém,

Více