5.2.1 Exemple simple
En déduction modulo, une partie de l’aspect calculatoire des démonstrations peut
être passée dans les conditions des règles d’inférence. Si on considère que la taille d’une
démonstration est son nombre d’applications de règles d’inférence, alors on voit que le
fait de travailler en déduction modulo doit pouvoir réduire la taille des démonstrations.
Néanmoins, comme indiqué ci-dessus, si on veut rester dans le cadre formel définit par
Stephen Cook et Robert Reckhow (1979), il faut pouvoir vérifier les démonstrations
en temps polynomial. Si on autorisait n’importe quel système de réécriture, et comme
la réécriture a la puissance des machines de Turing, il va de soi qu’on pourrait faire
diminuer la taille des démonstrations, en utilisant par exemple un système de réécriture
qui réécrit toutes les tautologies en⊤. Dans ce cas, les démonstrations ne seraient par
contre pas vérifiables en temps polynomial, puisqu’il faudrait calculer pour chaque règle
d’inférence si les conditions sont respectées, ce qui peut même être indécidable. Nous
allons montrer que l’on peut obtenir des réductions de la taille des démonstrations y
compris dans les cas où on est capable de vérifier les démonstrations en temps polynomial.
Pour cela, il suffit de considérer un système de réécriture encodant l’addition par un
prédicat ternaire :
Add
déf=
(
Add(O, y, y)→ ⊤
Add(s(x), y, s(z))→Add(x, y, z)
On encode un entier naturel n∈ N de façon standard parn
déf= s(· · ·s(
| {z }
nfois
O)). Pour ce
système, ←→∗ est calculable polynomialement. En effet, ce système est confluent, et il
termine en un nombre d’étapes linéaire par rapport à la taille des termes. Pour vérifier
que deux formules sont congruentes, il suffit donc de comparer leur forme normale.
Pourtant, il existe une réduction de taille arbitraire entre le calcul des séquences modulo
Addet le calcul des séquences étendu par toute présentation finie compatible avecAdd.
Proposition 5.3. Il existe une famille de formules (ai)i∈N telle que pour toute
présen-tation finieΓ compatible avec Add,
– pour tout i, on peut démontrer −ai en calcul des séquences modulo Add avec une
seule règle d’inférence ;
– il n’existe pas de borne au nombre d’applications de règles d’inférence nécessaires
aux démonstrations de Γ−ai en calcul des séquences sans modulo.
Le fait d’utiliser une présentation compatible nous dit que l’on a une démonstration
deΓ−ai pour touti, donc on peut utiliser la proposition 5.1 pour obtenir une réduction
de taille arbitraire comme corollaire de cette proposition.
Démonstration. On prend comme famille de formules (Add(i, i,2i))i∈N. Comme
Add(i, i,2i)−→∗ Add(O, i, i)−→ ⊤, on a la démonstration en calcul des séquences
mo-dulo
−⊤ Add(i, i,2i)−→ ⊤∗
−Add(i, i,2i)
Considérant maintenant une présentation finie Γ compatible avec Add. Les
démons-trations de Γ − Add(i, i,2i) vont devoir détailler les calculs. Γ est constituée
uni-quement de formules vérifiées par l’addition. Par exemple on peut avoir des formules
∀x y, Add(x, x, y) ⇒ Add(sm(x), sm(x), s2m(y)) pour un m fixé qui permet de diviser
le nombre d’étapes de calculs par m. Néanmoins, comme on a un nombre fini de
for-mules dans la présentation, cela ne suffit pas à borner la taille des démonstrations de
Remarque 5.1 :Ce n’est plus vrai si on considère des présentations compatibles infinies.
Il suffit pour s’en convaincre de prendre une présentation compatible contenant toutes
les formules ai.
Remarque 5.2 : Nous aurions pu utiliser l’encodage de l’addition par un symbole de
fonction (infixe) +plutôt qu’un prédicat ternaire comme ci-dessus, avec le système sur
les termes
O+y →y
s(x) +y →s(x+y) .
Dans ce cas il aurait fallu fixer la signature utilisée pour être sûr de pouvoir obtenir une
présentation compatible finie. Une autre solution serait de travailler avec un prédicat
d’égalité vérifiant l’axiome de réflexivité (2.23) et le schéma d’axiome deLeibniz(2.24).
On considère alors des présentations compatibles qui sont finies si on ne compte pas ce
schéma.
5.2.2 Calcul des structures en déduction modulo
On peut être satisfait par le résultat précédant, qui montre que la déduction modulo
peut permettre de réduire la taille des démonstrations de façon non bornée. Toutefois,
si la taille des démonstrations est réduite, le temps qu’il faut pour les construire est le
même, puisqu’il faut alors détailler toutes les étapes du calcul. En utilisant les résultats
de PaolaBruscoliet AlessioGuglielmi(2009) en inférence profonde, nous démontrons
que la déduction modulo permet de réduire la taille des démonstrations y compris si on
y compte le nombre d’étapes de réécriture. Pour cela, on intègre le système KS décrit
dans la figure 5.1 dans un système de déduction modulo.
Les règles d’inférence de KS peuvent être vue comme un système de réécriture
mo-dulo associativité, commutativité et propriétés de ⊤ et ⊥. L’idée est alors de travailler
modulo ce système. Néanmoins, en déduction modulo, on ne réécrit que des propositions
atomiques, ce qui empêche de faire ceci directement. Nous allons d’abord encoder les
formules par des termes, puis appliquer les règles de KS sur ces termes avant de les
dé-coder. Pour cela, on utilise une astuce assez courante en déduction modulo, qui consiste
à mimer la signature des prédicats à l’aide d’une signature pour les termes. Pour chaque
symbole de prédicatAon considère un symbole de fonctionA˙ de même arité. Ici, comme
on se place en logique propositionnelle, on peut se contenter de prédicats nullaires et de
constantes. On encode également les connecteurs logiques par des symboles de fonctions.
Ici, on se contente de ⊤, ⊥, ¬, ∧ et ∨ qui sont les connecteurs utilisé dans KS. On a
donc deux constantes ⊤˙ et∅, un symbole de fonction unaire¬˙ ainsi que deux symboles
de fonction binaires∩et∪. On ajoute ensuite un prédicat unaireǫ. On cherche à ce que
suivant :
ǫ( ˙A)→A (A prédicat nullaire)
ǫ( ˙⊤)→ ⊤
ǫ(∅)→ ⊥
ǫ( ˙¬x)→ ¬ǫ(x)
ǫ(x∩y)→ǫ(x)∧ǫ(y)
ǫ(x∪y)→ǫ(x)∨ǫ(y)
On utilise également un prédicat nullaire spécialC qui permet de lancer la réduction.
C →−ǫ( ˙⊤) .
Pour les règles de KS, on va les voir comme des règles de réécriture allant de haut en
bas. Comme ces règles d’inférence correspondent à des implications vue de haut en bas,
et non des équivalences, on utilise des règles polarisées. On considère donc le système de
réécriture sur les termes suivant :
˙
⊤ →−A˙∪¬˙A˙ (A prédicat nullaire)
∅ →−A˙ ′′
˙
A∪A˙ →−A˙ ′′
x∩(y∪z)→−(x∩y)∪z
(x∩y)∪(z∩w)→−(x∪z)∩(y∪w)
On noteraKS la réunion de ces deux systèmes. Il est à noté que l’on doit alors appliquer
ce système de réécriture modulo associativité, commutativité de ∧ et ∨, et modulo
propriétés de ⊤ et⊥. Rigoureusement, ce n’est pas possible en déduction modulo telle
que nous l’avons présentée. Néanmoins, la formulation originelle par Gilles Dowek et
collaborateurs (2003) utilise en fait une congruence basée sur un système de réécriture
et une théorie équationnelle qui pourrait comprendre l’associativité, etc.
On peut montrer que travailler modulo ce système de réécriture n’ajoute rien d’un
point de vue logique.
Proposition 5.4. Si on peut démontrer une séquence en logique propositionnelle qui ne
comporte pas deǫen calcul des séquences polarisé moduloKSalors on peut la démontrer
en calcul des séquences sans modulo.
Démonstration. Il suffit de remarquer que puisque les règles de KS sont des implications
valides, siǫ(p) −→∗
KS −ǫ(q) et queǫ(p)−→∗
KS P etǫ(p)−→∗
KS Qpour des formulesP etQsansǫ,
alors on peut démontrerP ⇒Q dans le calcul des séquences non modulo. Il suffit alors
d’utiliser une coupure avec cette démonstration pour passer deP àQ. De même, si on a
C −→
O n2
⊤
Sn
ǫ(sn)
KS
O n2
⌢−
Sn−Sn
C−Sn
−⇒
−C⇒Sn
˙
⊤
LK moduloKS
O n2 *
*
Fig. 5.2 : Simulation d’une démonstration dans KS en déduction modulo
On peut alors utiliser la famille de formules de PaolaBruscoliet AlessioGuglielmi
(2009) pour montrer que le calcul des séquences sans −
⌣
modulo KS réduit la taille
des démonstrations du calcul des séquences sans −
⌣
exponentiellement, y compris si on
compte les pas de réécriture dans la taille de la démonstration. On considère donc les
formules de Statmandéfinies récursivement :
Définition 5.3(Formules deStatman). On considère une signature infinie composée de
prédicats nullaires Ci etDi pour tout i∈N. On définit alors récursivement les formules
suivantes (k < n) :
– Pkn
déf= Ck∧(¬Ck+1∨ ¬Dk+1)∧ · · · ∧(¬Cn∨ ¬Dn);
– Qnk
déf= Dk∧(¬Ck+1∨ ¬Dk+1)∧ · · · ∧(¬Cn∨ ¬Dn);
– Sn
déf= (Cn∧Dn)∨(Pn
n−1∧Qn
n−1)∨ · · · ∨(Pn
0 ∧Qn
0)∨ ¬C0∨ ¬D0.
Proposition 5.5. Le calcul des séquences polarisé moduloKS sans coupure réduit
expo-nentiellement la taille des démonstration du calcul des séquences sans coupure, y compris
en comptant les étapes de conversion dans la taille de la démonstration.
Démonstration. La figure 5.2 illustre cette démonstration. Le nombre de proposition
atomiques de Snest 2n2+ 2. Comme les négations sont toutes au niveau des atomes, le
nombre de symbole y apparaissant est donc au plus de2×(2n2+2)+2n2+1 = 6n2+5. On
peut donc encoderSnau niveau des termes en un termesntel queǫ(sn)−→∗
6n2+ 5étapes. De plus, Paola Bruscoliet Alessio Guglielmi (2009, Théorème 3.12)
nous disent que⊤˙ −→∗
KS −sn en O n2
étapes. On a donc C −→∗
KS −Sn en O n2
étapes. On
peut donc démontrer les formulesC ⇒ Sn sans coupure enO n2
étapes. Ce n’est pas
possible en calcul des séquences sans coupure d’après RichardStatman (1978).
Le principal défaut de KS est son absence de confluence. La réduction du
non-déterminisme du calcul des structures est d’ailleurs un sujet actif de recherche,
prin-cipalement étudié par Ozan Kahramanoğulları (2006). De plus, si on a une
signa-ture infinie, on aura également un système de réécrisigna-ture infini, du fait de la première
règle permettant d’encoder les propositions atomiques. On peut bien entendu limiter la
signature à celle des formules que l’on cherche à démontrer.
5.3 Simulation de l’arithmétique d’ordre supérieure en
Dans le document
Bonnes démonstrations en déduction modulo
(Page 162-167)