918 – Systèmes formels de preuve en lo-
gique du premier ordre. Exemples.
Introduction Il s’agit d’étudier en tant qu’objets mathématiques les
démonstrations mathématiques, les énoncés à prouver étant formulés
dans le langage de la logique du premier ordre. Le caractère syntaxique
formel des preuves ainsi dénies permet donc d’obtenir des théorèmes
(méta)mathématiques, mais conduit également à des applications en
informatique : semi-décidabilité théorique, démonstration automatique,
assistants de preuve… Le principe étant que l’existence d’une preuve pour
une formule doit être équivalente à la validité universelle de cette dernière,
on établira à cette n des théorèmes de correction et complétude sur les
systèmes de preuve.
On se xe, dans toute cette leçon, un ensemble dénombrable de variables
Vet un langage Lcomposé pour chaque kNd’un ensemble Fket d’un
ensemble Rkde symboles de fonctions (resp. relations) d’arité k. On sup-
pose connues les notions de terme, formule, théorie et modèle en logique du
premier ordre.
1 Cadre général
Dénition 1. Supposons qu’on ait déni un ensemble de jugements. Une
règle d’inférence spécie que certaines jugements sont déductibles à partir
d’autres : on écrit
A1. . . An
B
lorsque le jugement Bse déduit à partir de A1, . . . , An. (On peut avoir n= 0,
dans ce cas Best un axiome.)
Dénition 2. Un système de preuve consiste en une dénition des jugements
ainsi que d’une famille de règles d’inférences associées. Une preuve d’un
jugement Jest alors un arbre dont les nœuds sont des inférences et la racine
est J; ainsi, les jugements prouvables sont inductivement engendrés par les
règles d’inférence. Si Jexprime que la formule Aest vraie, on dira également
qu’il s’agit d’une preuve de A, et lorsqu’une telle preuve existe, Aest dite
prouvable.
Dénition 3. Un système de preuve est dit :
cohérent si n’est pas prouvable ;
correct si toute formule prouvable est valide ;
complet si toute formule valide est prouvable ;
récursif si la vérication d’une inférence est décidable.
Remarque 4. Il sut que les axiomes soient valides et que la validité soit
stable par inférence, pour une notion de validité d’un jugement généralisant
celle d’une formule, pour qu’un système de preuve soit correct. La complé-
tude est souvent plus dile à établir.
Proposition 5. Si un système de preuve est récursif, l’ensemble des preuves
est récursif et l’ensemble des formules prouvables est récursivement énumé-
rable.
Corollaire 6. À partir de l’existence d’un système de preuve correct, com-
plet et récursif, on montre que l’ensemble des formules valides est récursive-
ment énumérable.
Proposition 7. Cependant, la validité d’une formule n’est pas décidable.
2 Préliminaires sémantiques
Les résultats de cette section serviront à démontrer des théorèmes de com-
plétude. On suppose ici que Lcontient des constantes, c’est-à-dire F0̸=.
Dénition 8. On appelle univers de Herbrand l’ensemble des termes clos
(i.e. sans variables).
Proposition 9. Toute partie de l’ensemble des atomes clos dénit un mo-
dèle sur l’univers de Herbrand qui satisfait exactement ces formules, appelé
modèle de Herbrand.
1
Théorème 10. Soit A=x1. . . xnBune formule existentielle (Bsans
quanticateur). Alors Aest valide si et seulement si elle est satisfaite par
tout modèle de Herbrand.
Théorème 11 (Théorème de Herbrand sémantique).Si A=x1...xnB
est une formule existentielle, elle est valide si et seulement s’il existe un entier
ket kinstances Bσ1, . . . , Bσkde Btelles que Bσ1. . . Bσksoit valide.
Développement 1. Démonstration des deux théorèmes précédents.
Proposition 12. Soit Aune formule, alors on peut construire à partir de
A, en ajoutant des symboles de fonction au langage, les formules :
(Skolemisation) AS, universelle, qui est satisfaisable ssi ASl’est ;
(Herbrandisation) AH, existentielle, qui est valide ssi Al’est.
3 Calcul des séquents
Dénition 13. Le calcul des séquents, noté LK, est un système de preuves
dont les jugements sont de la forme Γ, où Γ=Γ1, . . . , Γnet ∆ =
1, . . . , msont des ensembles de formules. Interprétation : la conjonction
des Γientraîne la disjonction des j. Les règles d’inférence sont les règles
axiome et coupure
(Axiome)
Γ, A A, ΓA, ∆ Γ, A
(Coupure)
Γ,Γ,
ainsi que des règles logiques permettant d’introduire les connecteurs logiques
(cf. annexe).
Exemple 14 (Paradoxe du buveur).La formule x.(P(x)⇒ ∀y.P (y)) est
prouvable dans LK (preuve en annexe).
Proposition 15. LK est correct et récursif.
Dénition 16. On appelle preuve sans coupure une preuve n’utilisant pas
la règle de coupure. Le calcul des séquents sans cette règle est noté LK.
Proposition 17 (Propriété de la sous-formule).Toute formule apparais-
sant à l’intérieur une preuve sans coupure peut être obtenue par substitu-
tion d’une sous-formule d’une formule apparaissant dans la conclusion de la
preuve.
Théorème 18 (Élimination des coupures).Si ΓLK , alors ΓLK.
De plus, on peut obtenir une preuve sans coupures à partir d’une preuve
avec coupures par un algorithme eectif (système de réécriture fortement
normalisant).
Remarque 19. Ceci permet de réduire l’espace de recherche des preuves
dans les procédures de semi-décision pour la logique du premier ordre.
Corollaire 20. LK est cohérent.
Théorème 21 (Théorème de Herbrand syntaxtique).Si Aest sans quanti-
cateur, x1...xnAest prouvable dans LK si et seulement s’il existe un
entier ket kinstances 1, . . . , Aσkde Atelles que 1. . . ksoit
prouvable dans LK.
Lemme 22. Aest prouvable dans LK ssi son herbrandisée AHl’est.
Théorème 23. LK est complet.
4 Résolution et programmation logique
Dans cette section, on suppose connue la théorie de l’unication syn-
taxique de termes. On rappelle que si deux termes tet usont uniables,
alors il existe un unicateur le plus général, noté mgu(t, u).
Dénition 24. Un littéral est un atome ou une négation d’un atome. Une
clause est une disjonction de littéraux, sans quanticateurs. Elle est impli-
citement universellement quantiée sur ses variables libres.
Dénition 25. La résolution est un système de preuve dont les jugements
sont des clauses et les règles sont la résolution et la factorisation
CL¬LC
Résolution
Cσ Cσ
CLL
Factorisation
Cσ
(L,Llittéraux, et σ=mgu(L, L)pour les deux règles) ainsi qu’une règle
d’échange correspondant à l’associativité et la commutativité de .
Exemple 26. La réfutation de (P(x, a)P(a, x)) (P(y, a)P(a, y)) (cf.
annexe) nécessite la règle de factorisation.
2
Proposition 27 (Correction).Si Cest déduite de C1, . . . , Cnpar résolution,
alors C1. . . Cn|=C. En particulier, si Cest la clause vide , alors
C1. . . Cnest insatisfaisable.
Lemme 28 (de relèvement).Si Cet Csont des clauses, ˆ
Cet ˆ
Cdes ins-
tances avec des termes clos, et ˆ
Dest obtenue à partir de ˆ
Cet ˆ
Cpar la règle
de résolution propositionnelle, alors il existe Ddont ˆ
Dest une instance et
qui découle de Cet Cpar la règle de résolution au premier ordre.
Théorème 29 (Complétude réfutationnelle).Si C1, . . . , Cnest insatisfai-
sable, alors il est possible d’obtenir par résolution à partir de C1, . . . , Cn.
Développement 2. Preuve de la complétude réfutationnelle, utilisant les
modèles de Herbrand ainsi que le lemme de König faible : tout arbre binaire
sans branche innie est ni.
Dénition 30. Une clause de Horn est une clause avec 0 ou 1 littéral positif.
On parle de but dans le premier cas, règle dans le second cas. On appelle
aussi fait une clause sans littéral négatif (consistant uniquement d’un littéral
positif).
Proposition 31. Les clauses de Horn sont stables par résolution.
Algorithme 32 (Résolution SLD).On souhaite réfuter un programme lo-
gique, composé de règles et d’un but C. Pour cela, on cherche à construire
par résolution une suite de clauses de but C=C1, . . . , Cn=, de sorte
que pour tout i,Ci+1 soit obtenue par résolution de Ciet d’une des clauses
de règles, sur son unique littéral positif. L’algorithme est paramétré par une
fonction de sélection qui dit sur quel atome tenter d’eectuer une résolution
à chaque étape.
Proposition 33. La résolution SLD est correcte et réfutationnellement
complète sur les clauses de Horn.
Théorème 34. Si Aest une formule existentielle, l’exécution d’un pro-
gramme logique de but ¬Atrouve une preuve par résolution qui fournit des
témoins d’existence de A, ce qui permet de calculer des fonctions. C’est le
principe du langage de programmation Prolog.
Théorème 35. La programmation logique est Turing-complète : toute fonc-
tion récursive peut être encodée par des clauses de Horn.
Développements
1. Théorème de Herbrand sémantique
2. Complétude de la méthode de résolution
3
Annexes
Règles du calcul des séquents
Connecteurs binaires
Γ, A
Γ, A B
Γ, B
Γ, A B
ΓA, Γ B,
ΓAB,
Γ, A ∆ Γ, B
Γ, A B
ΓA,
ΓAB,
ΓB,
ΓAB,
Négation
Γ, A
Γ⊢ ¬A,
ΓA,
Γ,¬A
Quanticateurs
Γ, A[t/x]
Γ,xA
Γ,xA (xnon libre dans Γ,)
Γ, A[t/x]
Γ⊢ ∀xA, (xnon libre dans Γ,)
ΓA[t/x],
ΓA[t/x],
Γ⊢ ∃xA,
Paradoxe du buveur en calcul des séquents
P(x), P (z)P(z),y.P (y)
P(x)P(z), P (z)⇒ ∀y.P (y)
P(x)P(z),x(P(x)⇒ ∀y.P (y))
P(x)⊢ ∀y.P (y),x.(P(x)⇒ ∀y.P (y))
P(x)⇒ ∀y.P (y),x.(P(x)⇒ ∀y.P (y))
⊢ ∃x.(P(x)⇒ ∀y.P (y)),x(P(y)⇒ ∀y.P (y))
⊢ ∃x.(P(x)⇒ ∀y.P (y))
Exemple de preuve par résolution
P(x, a)P(a, x)
P(a, a)
¬P(y, a)∨ ¬P(a, y)
¬P(a, a)
4
1 / 4 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 !