A logikai programozás egy olyan számítógépes programozási paradigma, amelyben a program utasításai a problémákra vonatkozó tényeket és szabályokat fejeznek ki egy formális logikai rendszerben. A szabályokat fejjel és törzzsel rendelkező logikai tételek formájában írjuk le; például: “H igaz, ha B1, B2 és B3 igaz”. A tényeket a szabályokhoz hasonlóan, de test nélkül fejezik ki; például: “H igaz.”
Egyes logikai programozási nyelvek, mint például a Datalog és az ASP (Answer Set Programming), tisztán deklaratívak. Ezek lehetővé teszik, hogy kijelentéseket tegyünk arról, hogy a programnak mit kell teljesítenie, explicit lépésről-lépésre történő utasítások nélkül. Mások, mint például a Prolog, a deklaratív és az imperatív nyelvek kombinációja. Ezek tartalmazhatnak procedurális utasításokat is, például: “H megoldásához oldja meg a B1, B2 és B3 feladatokat.”
Logikai programozásra használt nyelvek
- Absys
- ALF (algebrai logikai funkcionális programozási nyelv).
- Algoritmikus program hibakeresés
- Alice
- Alma-0
- ASP (Answer Set Programming)
- CHIP
- Ciao
- CLACL
- CycL
- Datalog
- Datomic
- DLV
- ECLiPSe
- F-logika
- Flora-2
- Fril
- FuzzyCLIPS
- Gödel
- HiLog
- Janus
- ΛProlog
- Logtalk
- Maude rendszer
- Mercury
- MetaL
- Mozart programozási rendszer
- Oz
- Parlog
- Planner
- PROGOL
- Prolog
- Prolog++
- Prova
- .QL
- Rebeca modellező nyelv
- ROOP
- SICStus Prolog
- SWI-
- SWI-Prolog
- ToonTalk
- Tranzakciós logika
- Twelf
- Vizuális Prolog
- XSB
Nyelv, Logika, Gépi tanulás, Paradigma, Programozási kifejezések