Ecole Supérieure d’Ingénieurs de Luminy
Département Informatique
LOGIQUE FORMELLE
ET
DEMONSTRATION AUTOMATIQUE
Notes de cours
Henry KANOUI
Octobre 2006
Logique et démonstration automatique – H. KANOUI 1
LOGIQUE FORMELLE ET DEMONSTRATION AUTOMATIQUE
Horaires
20 heures de cours et TD
Bibliographie
Outils Logiques pour l’Intelligence Artificielle – JP Delahaye – Eyrolles (1986)
First-Order Logic and Automated Theorem Proving – M. Fitting – Springer (1996)
Introduction to mathematical logic – E. Mendelson – 4ème ed. – Chapman & Hall (1996)
Gödel, Escher, Bach : les brins d’une guirlande éternelle – D. Hofstadter – InterEditions (1985)
Résumé
L’objet de la logique formelle est l’ « analyse des phrases et des preuves » en considérant la forme
de ces phrases et de ces preuves et en faisant abstraction du contenu. Prouver une formule, c’est
appliquer de façon mécanique des règles de transformation. Ceci est autre chose que la notion de
« vérité », laquelle faite référence au monde réel et qu’on aborde par le biais des
« interprétations » et des « modèles ». Bien entendu, on fera le lien entre ce qui est démontrable et
ce qui est « vrai » en espérant que, dans un monde bien fait les deux se recouvrent.
La logique peut être abordée depuis plusieurs points de vue selon qu’on s’adresse à des
philosophes, des mathématiciens ou des informaticiens. C’est ce dernier point de vue que nous
privilégierons, après avoir toutefois soigneusement introduit les notions de bases des systèmes
formels, puis les aspects syntaxiques et sémantiques du calcul propositionnel et du calcul des
prédicats. Ayant pour objectif d’utiliser un ordinateur pour automatiser les manipulations des
formules logiques, nous insisterons sur les propriétés et les limites du formalisme du point de vue
de la notion de preuve.
La deuxième partie est consacrée aux méthodes de démonstration automatique : tableaux
sémantiques et résolution qui est la plus intéressante du point de vue de l’implémentation. On
terminera par l’étude des différentes stratégies qui peuvent être mises en oeuvre pour accélérer ou
améliorer les démonstrations. On parviendra ainsi à caractériser le moteur de démonstration de
base du langage Prolog qui fera l’objet d’un autre cours.
Plan du Cours
1. Systèmes formels
Définitions
Propriétés
Exemples
2. Calcul propositionnel
Syntaxe
Sémantique : notion d’interprétation et de modèle
Modèle de Herbrand
Propriétés et principaux résultats
3. Calcul des prédicats
Syntaxe
Substitutions, unification
Sémantique : interprétations et modèles
Propriétés et principaux résultats
4. Eléments de démonstration automatique
Tableaux sémantiques
Résolution sans variables
Résolution avec variables
Stratégies : définitions et propriétés
Logique et démonstration automatique – H. KANOUI 2
SYSTEMES FORMELS
Définition : S = < Σ , F, A , R >
Σ : alphabet au moins dénombrable (donc existence d’un ordre)
F Σ* : formules bien formées (récursif : l’appartenance à F est décidable)
A F : axiomes (récursif)
R : règles d’inférences :
r(f1 , f2 ,…, fn , g) : f1 , f2 ,…, fn |-r g ou : de f1 , f2 ,…, fn on déduit g par la règle r.
Déduction dans un S.F.
Une déduction à partir de h1 , h2 ,…, hn est une suite finie f1 , f2 ,…, fp telle que i :
fi est un axiome
ou fi { h1 , h2 ,…, hn }
ou il existe fi0 , fi1 ,…, fik placés avant fi et une règle r tels que fi0 , fi1 ,…, fik |-r fi
On écrit alors : h1 , h2 ,…, hn |-S fp
ou f1 , …, fp est une déduction de fp sous les hypothèses h1 ,…, hn dans le système formel S.
Théorème d’un S.F.
t est un théorème de S ssi |-S t On écrit : t TS
Exemple 1
Σ = F = { f1 , f2 , f3 , f4 , f5 } f1 f2
A = { f1 , f2 } r1
R = { f1 , f2 |-r1 f3 ; f2 |-r2 f4 ; f2 , f3 , f4 |-r3 f5 } r2
f3 f4
r3
Démonstration de f5 :
f5
Exemple 2
Σ = { 1 , + , = }
F = { 1n +1m = 1p | m, n, p entiers >0 }
A = {1 + 1 = 11 }
R = {1n +1m = 1p |-r1 1n+1 +1m = 1p+1 ; 1n +1m = 1p |-r2 1n +1m+1 = 1p+1}
La suite de formules
f1 : 1 + 1 = 11 axiome
f2 : 1 + 11 = 111 par application de r2 à f1
f3 : 1 + 111 = 1111 par application de r2 à f2
f4 : 11 + 111 = 11111 par application de r1 à f3
est une démonstration de f4 : f4 TS
Remarque
Les manipulations sont purement syntaxiques comme dans tout S.F.
Même si une interprétation s’impose à l’esprit, tout ce que l’on pense être vrai n’est pas
forcément un théorème
Il se peut qu’il n’y ait aucune adéquation entre le formalisme, les règles d’inférence et la vérité
Par exemple 1+1+1 = 111 TS car 1+1+1 = 111 F
Logique et démonstration automatique – H. KANOUI 3
P
ROPRIETES DES SYSTEMES FORMELS
Cohérent : il existe des fbf qui ne sont pas des théorèmes
Décidable : pour tout f F le problème « f TS » a une réponse oui ou non (algorithme)
Correct : si f TS » alors f est vraie
notion d’interprétation (sémantique)
Complet : f TS » ssi f est vraie
Si le S.F. comporte un symbole de négation (¬)
Consistant : il n’existe pas de fbf f F telle que f TS et ¬ f TS
Catégorique : pour tout f F on a f TS ou ¬ f TS
Saturé : pour tout f F si f TS alors S { ¬ f } est inconsistant
Exemple
Pour le SF précédent : TS = { 1n +1m = 1n+m | m, n entiers >0 }
1) m, n >0, [1n +1m = 1n+m] TS
vrai pour n + m = 2 (axiome)
supposons vrai pour tout (n,m) tq n+m<p
soit (i, j) tq i + j = p
1i - 1 + 1j = 1p-1 car (i-1) + j = p-1<p
1i + 1j = 1p-1+1 = 1p TS par application de r1
cqfd
2) Réciproquement, toutes les formules intervenant dans une déduction sont de la forme :
1n + 1m = 1n+m car :
c’est vrai pour l’axiome
si c’est vrai pour f et que f |-r1 g alors c’est vrai pour g
si c’est vrai pour f et que f |-r2 g alors c’est vrai pour g
donc tous les théorèmes de S sont de cette forme
cqfd.
On a donc caractérisé tous les théorèmes de S ce qui est impossible pour des S.F. complexes.
Propriétés
S est cohérent : 1 + 1 = 111 n’est pas un théorème
S est décidable : évident
S est correct et complet vis à vis de la notion d’addition entre 2 « entiers » non nuls : S
modélise correctement cette notion.
Logique et démonstration automatique – H. KANOUI 4
R
ESULTATS GENERAUX
Dans tout ce qui suit on se place dans un système formel S.
Proposition 1
Si h1,…,hk |- f1 et h1,…,hk |- f2 et … et h1,…,hk |- fn et f1,…,fn |- g alors h1,…,hk |- g
En effet pour i=1,2,…,n soit qi,1,…, qi,pi une déduction de fi à partir de h1,…,hk
Soit aussi r1,…,rm une déduction de g à partir de f1,…,fn
Alors q1,1,…, q1,p1 ,…, qn,1,…, qn,pn , r1,…,rm est une déduction de g à partir de h1,…,hk
Proposition 2
L’ensemble des déductions est récursif
C’est à dire qu’il existe un programme qui pour toute suite finie d’éléments f1,…,fn de Σ* indique
en un temps fini si cette suite est une déduction ou pas. On procède ainsi :
on vérifie que chaque fi est une fbf ( l’ensemble des fbf est récursif par définition)
on répère les axiomes parmi les fi (l’ensemble des axiomes est récursif par définition)
pour chaque formule qui n’est pas un axiome on vérifie qu’elle peut être obtenue à partir des
formules qui la précèdent
Proposition 3
L’ensemble des théorèmes est récursivement énumérable
C’est à dire qu’il existe un programme qui calcule la liste de tous les théorèmes de S.
on considère un programme qui calcule toutes les suites finies de fbf
pour chaque suite on vérifie si oui ou non cette suite est une déduction (prop. 2). Si oui la
dernière formule de la suite est un théorème.
Proposition 4
Il existe des SF pour lesquels l’ensemble des théorèmes n’est pas récursif .
Ainsi, alors qu’il y a toujours un moyen algorithmique qui détermine en un temps fini si une suite
de formule est une déduction ou pas, il n’y en a pas en général qui détermine si une fbf est un
théorème ou pas.
1 / 50 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !