Matière
Logique et programmation logique
Description
Ce cours est une introduction à la logique et à son rapport avec l'informatique. Ce cours introduit le paradigme de programmation logique par la pratique du langage Prolog.
Compétences visées
À l'issue de ce cours un étudiant devrait :
- comprendre la notion de système formel et savoir formaliser un problème ;
- savoir utiliser le calcul des propositions et le calcul des prédicats ;
- comprendre la distinction entre syntaxe (déductions formelles) et sémantique (interprétations), en particulier comprendre la notion de modèle ;
- savoir traduire des énoncés du langage courant en logique du premier ordre ;
- pouvoir faire des déductions par la méthode de résolution (avec ou sans variables) ;
- savoir résoudre un problème pratique simple en utilisant la programmation en Prolog.
Discipline(s)
- Informatique
Syllabus
Logique propositionnelle, syntaxe, sémantique, (tables de vérité, satifiabilité, tautologies).
Logique des prédicats, syntaxe, sémantique.
Systèmes formels, notion de correction/complétude.
Déduction naturelle.
Mise en forme de clause, Mise en formel prénexe, Skolemisation, Unification
Méthode de résolution pour la logique des prédicats.
Introduction à Prolog: faits, règles, fonctionnement de l’intérpréteur.
Bibliographie
- J.P. Delahaye : Outils logiques pour l'intelligence artificielle, 3e édition, Paris, Eyrolles, 1988.
- Lafourcade, Lévy, Desvismes : Logique et démonstration automatique - Introduction à la logique propositionnelle et à la logique du premier ordre
- David, Nour, Raffali : Introduction à la logique - 2e éd. - Théorie de la démonstration: Théorie de la démonstration