• Aucun résultat trouvé

Systèmes canoniques abstraits

Dans le document Bonnes démonstrations en déduction modulo (Page 127-131)

Les systèmes canoniques abstraits ont été introduits dans le but de définir un cadre

général et formel qui englobe les différentes procédures ressemblant à la complétion

standard dans lesquels on voit apparaître des notions de complétude, de saturation et de

redondances. Parmi ces procédures, on retrouve bien entendu la complétion standard de

DonaldKnuth et Peter Bendix (1970) mais également la complétion close de Wayne

Snyder(1989), la complétion modulo équations de Jean-Pierre Jouannaudet Hélène

Kirchner(1986) et GeraldPetersonet MarkStickel(1981), la complétion ordonnée

initiée par DallasLankford (1975) et obtenue finalement par JiehHsiang et Michaël

Rusinowitch (1991), la génération de bases de Gröbner par l’algorithme de Bruno

Buchberger(1985), l’amélioration de bases de connaissances représentées sous forme

de familles de Moore (Karell Bertet et Mirabelle Nebut, 2004), etc. Les systèmes

canoniques abstraits sont fondés sur l’utilisation d’un ordre sur les démonstrations, ce

qui reprend une idée développée par LeoBachmair(1987, 1991) avec l’aide de Nachum

Dershowitz (1989, 1994), Harald Ganzinger (1994), Jieh Hsiang (1986) et David

Plaisted(1989).

Nachum Dershowitz (2003) a démontré que la complétion close rentrait dans ce

cadre, nous avons fait de même avec Claude Kirchner pour la complétion standard

(2006), et Maria PaolaBonacina et Nachum Dershowitz(2007b, 2008) se sont

inté-ressés aux familles deMoore et aux théories deHorn.

4.2.1 Définitions et postulats

On se place dans un système de déduction (A,P,[·]Pm

,[·]Cl) tel qu’introduit par la

définition 2.14. Rappelons que cela implique queTh :A7→[[A]Pm−1

]Cl est un opérateur

de fermeture.

On munit alors l’ensemble des démonstrations de deux ordres bien fondés >et ✄, le

premier mesurant la qualité des démonstrations, le second représentant leur structure et

étant par conséquent appeléordre de sous-démonstration. Sans précision supplémentaire,

quand on parlera de l’ordre sur les démonstrations on fera référence au premier. Par

convention, on supposera qu’il compare uniquement des démonstrations ayant la même

conclusion (p > q implique[p]Cl = [q]Cl).

Exemple 4.3: Pour donner des intuitions, nous illustrerons cette section avec la

complé-tion standard, mais sans rentrer dans les détails qui pourront être trouvés dans notre

travail avec Claude Kirchner(2006).

Pour la complétion standard, les formules sont soit des règles de réécriture, soit des

équations entre termes. Les démonstrations sont des démonstrations par réécriture : par

exemplea←−

s→tb−→

u→vc←→

e=f dest une démonstration dea=ddansPf({s→t;u→v;e=f}).

L’ordre sur les démonstrations est choisi de telle sorte que la démonstrationa←−

s→tb−→

u→vc

soit plus grande que a←→

a=c c, elle-même plus grande qu’une démonstration de la forme

a−→ ←− c.

Définition 4.1(Démonstration triviale). Une démonstrationpest ditetrivialesi elle n’a

pas de sous-démonstration et démontre son unique hypothèse, c’est-à-direp☎q implique

p=q et [p]Pm

={[p]Cl}.

Pour chaque formule a ∈A on notera ba une démonstration triviale de conclusion a,

qu’on suppose exister. Pour une présentation A, on noteraAbl’ensemble des

démonstra-tion triviale des formules de A.

Exemple 4.4: Pour la complétion standard, la démonstration triviale des→tests−→

s→tt.

Il est à noter que les démonstrations constituées de zéro étapes de réécriture, par

exemple pour démontrer s=s, ne sont pas des démonstrations triviales, car elles n’ont

pas d’hypothèses.

On suppose alors que la structure dont on dispose vérifie trois postulats.

Postulat A (Trivialité).

Pour toutes démonstration p et formule a, si a∈[p]Pm alors p☎ba.

Postulat B (Monotonie des hypothèses des sous-démonstrations).

Pour toutes démonstrations p et q, si p☎q alors[p]Pm

⊇[q]Pm.

Postulat C (Remplacement).

Pour toutes démonstrations p, q et r : si p✄q > r alors il existe une démonstration

v∈Pf([p]Pm

∪[r]Pm

) telle que p > v✄r.

Le premier postulat énonce qu’une démonstration utilise vraiment ses hypothèses, le

deuxième que les sous-démonstrations n’utilisent pas plus d’hypothèses que la

démons-tration en question, et le dernier que l’on peut remplacer une sous-démonsdémons-tration par

une démonstration plus petite et obtenir une démonstration plus petit que l’originelle.

Nous avons démontré (2005) que l’on peut en fait se passer du postulat B, pour pouvoir

l’appliquer par exemple à des systèmes intégrant le théorème de déduction et

déchar-geant par conséquent des hypothèses, comme la déduction naturelle. Toutefois, nous

n’utiliserons pas ce fait ici.

Définition 4.2. On noteµP l’ensemble des démonstrations minimales de la justification

P :

µP

déf

= {p∈P : ¬∃q∈P, p > q} .

Une démonstration est enforme normale pour une présentationA si elle est minimale

quelle que soit la présentation de ThA. On dénote l’ensemble des démonstrations en

forme normale pour A par Nf(A) qui peut donc être défini par

Nf(A)

déf

= µPf(ThA) .

Exemple 4.5 :Pour la complétion standard, les démonstration en forme normale sont

alors les démonstrations en vallée, c’est-à-dire de la formes−→ ←− t.

Étant donnée une théorie, le but est d’en trouver une présentation telle qu’on puisse

se contenter des démonstrations minimales pour obtenir la théorie en entier. C’est ce

qu’on va appeler la complétude

Définition 4.3(Complétude). Une présentationA est dite complètesi on peut

démon-trer toute la théorie en se contentant des démonstrations en forme normale, c’est-à-dire

si

ThA= [Pf(A)∩Nf(A)]Cl .

Exemple 4.6:Pour la complétion standard, un système est complet si toutes les égalités

démontrables dans ce système le sont en utilisant une démonstration en vallée, ce qui

est équivalent à dire que le système est confluent.

4.2.2 Mécanismes de complétion

On peut maintenant définir des mécanismes de déduction qui permettent de

transfor-mer les présentations dans le but de les rendre complètes.

Définition 4.4. Unmécanisme de déductionest une fonction des présentations dans les

présentations. On notera A ❀B si B est l’image de A par le mécanisme de déduction

.

Une suite (An)nN de présentations telles que A0 ❀ A1 ❀· · · est appelées une

déri-vation.

Le résultat A d’une dérivation (An)nN est l’ensemble des formules persistantes

défini par

A∞

déf

= [

j>0

\

i>j

Ai .

On peut alors définir un mécanisme de complétion, celui qui permettra d’obtenir des

présentations complètes.

Définition 4.5 (Mécanisme de complétion). Un mécanisme de déductionest dit de

complétion si

– si A❀B, alors ThA=ThB;

– si A ❀ B, alors pour toute démonstration p ∈ Pf(A) il existe une démonstration

q ∈Pf(B) qui est au moins aussi bien, c’est-à-dire p≥q;

– pour toute dérivation (An)n∈N, la limiteA∞ est complète.

Les mécanismes de complétion sont bien ceux que l’on attend, car leurs limites peuvent

démontrer toute la théorie initiale en n’utilisant que des démonstrations en forme

nor-males

Théorème 4.1 (Maria Paola Bonacina et Nachum Dershowitz (2007a, Lemma

5.13)).

Un mécanisme est de complétion ssi pour toute dérivation (An)nN on a

ThA0= [Pf(A)∩Nf(A0)]Cl .

NachumDershowitzet ClaudeKirchner(2003) définissent un mécanisme de

com-plétion particulier, basé sur la notion de démonstration critique.

Définition 4.6 (Démonstration critique). Une démonstration est ditecritiquepour une

présentation A si elle est minimale pour la présentation A sans être en forme normale,

et toutes ses sous-démonstrations sont en forme normale. On notera Crit(A) l’ensemble

des démonstrations critiques de A, qui est donc défini par

Crit(A)

déf

= {p∈µPf(A)\Nf(A) : ∀q ∈Pf(A), p✄q⇒q ∈Nf(A)} .

Exemple 4.7 : Pour la complétion standard, les démonstrations critiques sont les paires

critiques non joignables, c’est-à-dire des démonstrations de la formeu ←−

s[v]→us[v]−→

v→ws[w]

telles qu’il n’existe pas de démonstration en valléeu−→ ←− s[w]. La complétion standard

consiste alors à ajouter l’équationu=s[w]dans la présentation, de façon à ce qu’il soit

possible de construire la démonstration plus petite u ←→

u=s[w]s[w].

Pour compléter une présentation, il suffit donc de lui ajouter la possibilité de construire

des démonstrations plus petites que les démonstrations critiques. Une présentation

com-plétante permettra ceci.

Définition 4.7 (Présentation complétante). Une présentation sera dite complétante

pour A si elle est incluse dans la théorie de A et si elle contient les hypothèses de

démonstrations strictement plus petites que les démonstrations critiques deA. En général

on notera C(A) une telle présentation. Cela revient à dire qu’il existe un ensemble de

démonstrations P(A) telles que pour toute démonstration critique de A il existe une

démonstration plus petite dans P(A), et

[

p∈P(A)

{[p]Pm} ⊆C(A)⊆ThA .

Le mécanisme de déduction est alors défini par A ❀ A∪C(A). On peut démontrer

que c’est bien un mécanisme de complétion.

Proposition 4.2 (NachumDershowitzet ClaudeKirchner(2003, Lemme 10)). Ce

mécanisme est un mécanisme de complétion.

4.3 Le calcul des séquences avec dépliage polarisé comme

Dans le document Bonnes démonstrations en déduction modulo (Page 127-131)