La programmazione logica è un paradigma di programmazione informatica in cui le dichiarazioni del programma esprimono fatti e regole sui problemi all’interno di un sistema di logica formale. Le regole sono scritte come clausole logiche con una testa e un corpo; per esempio, “H è vero se B1, B2 e B3 sono veri”. I fatti sono espressi in modo simile alle regole, ma senza un corpo; per esempio, “H è vera.”
Alcuni linguaggi di programmazione logica, come Datalog e ASP (Answer Set Programming), sono puramente dichiarativi. Permettono dichiarazioni su ciò che il programma dovrebbe realizzare, senza istruzioni esplicite passo per passo su come farlo. Altri, come Prolog, sono una combinazione di dichiarativo e imperativo. Possono anche includere dichiarazioni procedurali, come “Per risolvere H, risolvere B1, B2, e B3.”
Linguaggi usati per la programmazione logica
- Absys
- ALF (linguaggio di programmazione funzionale logica algebrica).
- Debuging di programmi algoritmici
- Alice
- Alma-0
- ASP (Answer Set Programming)
- CHIP
- Ciao
- CLACL
- CycL
- Datalog
- Datomico
- DLV
- ECLiPSe
- F-logica
- Flora-2
- Fril
- FuzzyCLIPS
- Gödel
- HiLog
- Janus
- ΛProlog
- Logtalk
- Sistema Maude
- Mercurio
- MetaL
- Sistema di programmazione Mozart
- Oz
- Parlog
- Planner
- PROGOL
- Prolog
- Prolog++
- Prova
- .QL
- Linguaggio di modellazione Rebeca
- ROOP
- SICStus Prolog
- SWI-Prolog
- ToonTalk
- Transaction logic
- Twelf
- Visual Prolog
- XSB
Lingua, Logica, apprendimento automatico, paradigma, termini di programmazione