Slovník výrazov AI/Znalosti a symbolické uvažovanie

Znalosti a symbolické uvažovanie

logické programovanie

Anglický výraz logic programming

základnéheslo č. 6585 otázok a odpovedí2 odborné zdroje

Presná definícia

Čo znamená logické programovanie?

Logické programovanie vyjadruje problém pomocou faktov a pravidiel a odpoveď získava dokazovaním dotazu podľa formálnej sémantiky jazyka. Program opisuje, čo platí, kým inferenčný mechanizmus volí postup výpočtu. Praktické jazyky ako Prolog používajú konkrétny poriadok unifikácie a spätného prehľadávania.

Skúsenosť a kontext

Ako sa pojem používa v praxi

V plánovaní služieb sa pravidlá kompatibility zapíšu deklaratívne a dotaz hľadá platné priradenia. Vývojár oddelí čisté logické pravidlá od vedľajších účinkov, testuje ukončenie a uchová dôkazovú stopu. Negácia sa interpretuje podľa použitej sémantiky, nie ako univerzálna nepravda.

Overiteľnosť

Odborné zdroje

  1. Stanford Encyclopedia of Philosophy - Logic and Artificial Intelligenceplato.stanford.edu
  2. Answer Set Programming - Gelfond and Lifschitz stable-model foundationscs.utexas.edu

Praktické odpovede

Často kladené otázky

Ako funguje logické programovanie?

Resolver unifikuje cieľ s hlavou pravidla, nahradí ho podcieľmi a prehľadáva možné substitúcie až po dôkaz alebo zlyhanie.

Kedy má logické programovanie praktický význam?

V plánovaní služieb sa pravidlá kompatibility zapíšu deklaratívne a dotaz hľadá platné priradenia.

S čím si pojem nezamieňať?

Imperatívne programovanie predpisuje kroky zmeny stavu; logic programming deklaruje relácie a odpovede hľadá inferenciou.

Ako sa výsledok kontroluje?

Overuje sa množina očakávaných odpovedí, úplnosť, ukončenie, poradie cieľov a správanie negácie.

Na čo si dať pozor?

Procedurálne detaily ovplyvnia výkon a niekedy výsledok; neobmedzená rekurzia alebo nevhodné poradie vedú k neukončeniu.