Předmět: Logické programování

« Zpět
Název předmětu Logické programování
Kód předmětu KMI/LGPR
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Magisterský
Rok studia 2
Semestr Zimní
Počet ECTS kreditů 4
Vyučovací jazyk Čeština, Angličtina
Statut předmětu Povinně-volitelný
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Dostupnost předmětu Předmět je nabízen přijíždějícím studentům
Vyučující
  • Kolařík Miroslav, doc. RNDr. Ph.D.
  • Balun Jiří, Mgr.
Obsah předmětu
Kurz seznamuje posluchače s logickým programováním a jeho teoretickým modelem založeným na predikátové logice. Kurz obsahuje teoretické pasáže věnující se syntaxi a sémantice logických programů a jejich vztahu k teoriím v predikátové logice. Pozornost je dále věnována činnosti překladače jazyka PROLOG. Na závěr kurzu jsou ukázány aplikace logického programování v expertních a databázových systémech. <ol> <li> Opakování relevantních pojmů z predikátové logiky. Rezoluční odvozovací pravidlo. <li> Základy logického programování. Logický program a jeho sémantika. Logické paradigma jako jedno z paradigmat programování. <li> Definitní programy a jejich syntaxe. Klauzule, fakta, pravidla a dotazy. <li> Deklarativní sémantika definitního programu: herbrandova struktura, herbrandův model, nejmenší herbrandův model a jeho nalezení. Sémantické vyplývání z definitních programů. Substituce, aplikace substituce, uzavřené instance klauzulí, korektní odpovědi. Čisté logické programování a PROLOG. <li> Procedurální sémantika logického programu. Rekurzivní datové struktury. Rekurzivní pravidla. Rekurzivní datové struktury. Unifikace. Nedeterministická inference. Metody odstranění nedeterminismu. Nejobecnější unifikátor a jeho nalezení. Procedurální sémantika definitního programu. Vztah deklarativní a procedurální sémantiky: korektní odpovědi versus vypočtené odpovědi. <li>Činnost zásobníku během výpočtu PROLOGu, backtracking, nalezení alternativních řešení. <li> Metalogický predikát řezu. Výpočtová efektivita a řezy. Řízení výpočtu pomocí řezů. Činnost zásobníku během výpočtu PROLOGu obohaceného o řezy. Vytváření podmínek a cyklů pomocí vestavěných predikátů. <li>Teoretické přístupy k negaci: předpoklad uzavřenosti světa; negace pomocí neúspěchu v konečně mnoha krocích. Zavedení negace pomocí řezu. <li> Zabudovaná aritmetika. Modifikace databáze faktů a pravidel. Aplikace logického programování v databázových a expertních systémech. </ol>

Studijní aktivity a metody výuky
Přednášení, Demonstrace
Výstupy z učení
Studenti se seznámí se základními pojmy z logického programování.
Analyzovat problém a napsat logický program pro jeho řešení.
Předpoklady
nespecifikováno

Hodnoticí metody a kritéria
Ústní zkouška, Písemná zkouška

Aktivní účast v hodině. Plnění zadaných úkolů. Složení ústní (příp. písemné) zkoušky.
Doporučená literatura
  • Bratko I. (2001). PROLOG Programming for Artificial Intelligence. Addison Wesley (third edition).
  • Jirků P. a kol. (1991). Programování v jazyku Prolog. SNTL, Praha.
  • K. Doets. (1994). From Logic to Logic Programming. The MIT Press.
  • Lloyd J.-W. (1987). Foundations of Logic Programming. Springer, New York.
  • M. Kifer, Y. A. Liu. (2018). Declarative Logic Programming: Theory, Systems, and Applications. Morgan & Claypool.
  • P. Boizumault. (2014). The Implementation of Prolog. Princeton University Press.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr
Fakulta: Přírodovědecká fakulta Studijní plán (Verze): Aplikovaná informatika - specializace Počítačové systémy a technologie (2024) Kategorie: Informatické obory 2 Doporučený ročník:2, Doporučený semestr: Zimní
Fakulta: Přírodovědecká fakulta Studijní plán (Verze): Informatika - specializace Umělá inteligence (2020) Kategorie: Informatické obory 2 Doporučený ročník:2, Doporučený semestr: Zimní
Fakulta: Přírodovědecká fakulta Studijní plán (Verze): Aplikovaná informatika - specializace Vývoj software (2024) Kategorie: Informatické obory 2 Doporučený ročník:2, Doporučený semestr: Zimní
Fakulta: Přírodovědecká fakulta Studijní plán (Verze): Informatika - specializace Obecná informatika (2020) Kategorie: Informatické obory 2 Doporučený ročník:2, Doporučený semestr: Zimní
Fakulta: Přírodovědecká fakulta Studijní plán (Verze): Učitelství informatiky pro střední školy maior (2019) Kategorie: Pedagogika, učitelství a sociální péče 2 Doporučený ročník:2, Doporučený semestr: Zimní