• Aucun résultat trouvé

Relation binaire sur un ensemble

Partie I Notions fondamentales 1

2.1 Relation binaire sur un ensemble

R´e´ecriture

Sommaire

2.1 Relation binaire sur un ensemble . . . . 26

2.2 Syst`eme de r´e´ecriture . . . . 28

2.2.1 Cas non conditionnel . . . . 28

2.2.2 Cas conditionnel . . . . 29

2.3 Sp´ecification ´equationnelle . . . . 30

2.3.1 Un syst`eme de r´e´ecriture particulier . . . . 30

2.3.2 Pourquoi orienter les ´egalit´es ? . . . . 31

2.3.3 Unification . . . . 32

2.3.4 Paires critiques . . . . 33

2.3.5 La proc´edure de compl´etion de Knuth-Bendix . . . . 34

2.4 Compl´etude suffisante . . . . 34

2.5 R´e´ecriture modulo un ensemble d’´egalit´es . . . . 36

2.5.1 Relation binaire modulo un ensemble d’´egalit´es . . . . 36

2.5.2 R´e´ecritureR, Eet compl´etude suffisante . . . . 37

Dans ce chapitre, nous commen¸cons par rappeler quelques d´efinitions utiles sur les relations

binaires, et en particulier sur les relations d’ordre et leurs variantes. Nous effectuons ensuite une

mise au point sur la notion de syst`eme de r´e´ecriture et sur celle de sp´ecification ´equationnelle.

Les ´egalit´es sont sym´etriques, cela signifie qu’on peut les appliquer dans les deux sens. Nous

verrons qu’il peut ˆetre pertinent cependant de ne restreindre leur application qu’`a un seul sens,

afin de les transformer en r`egles de calcul. Nous effectuerons ensuite quelques rappels sur la

notion d’unification qui joue un rˆole central en informatique, aussi bien pour prouver que pour

calculer. Nous parlerons ´egalement de lacompl´etude suffisante, qui est une propri´et´e importante

des syst`emes de r´e´ecriture, et sur laquelle repose en grande partie la correction des syst`emes

de recherche de preuves pr´esent´es dans les parties III et IV. Nous d´efinirons par ailleurs un

sous-ensemble de positions caract´eristiques `a l’int´erieur des termes qui seront utilis´ees par ces

syst`emes : les positions d´efinie-maximales. La derni`ere section de ce chapitre est d´edi´ee `a la

r´e´ecriture modulo un ensemble d’´egalit´es. Plusieurs relations de ce type peuvent ˆetre d´efinies.

L’une d’entre elles est la relation de Peterson et Stickel `a partir de laquelle nous proposons

une d´efinition d’unsyst`eme de r´e´ecriture modulo suffisamment complet. Nous expliquerons alors

l’int´erˆet que les positions d´efinie-maximales poss`edent ´egalement dans le cas de la r´e´ecriture

modulo. Pour cela, il est d’abord n´ecessaire de d´efinir une propri´et´e deconservation des termes

constructeurs sur les ensemble d’´egalit´es.

2.1 Relation binaire sur un ensemble

De nombreuses d´efinitions et propri´et´es de base des syst`emes de r´e´ecriture peuvent ˆetre

´enonc´ees de fa¸con abstraite, via les relations binaires sur les ensembles.

D´efinition 2.1 Un ensemble T ´etant donn´e, on appelle relation binaire sur T tout

sous-ensemble du produit cart´esienT ×T.

Remarque: Une relation est souvent not´ee →, et on ´ecrit a → b pour signifier que deux

´el´ementsaetb sont en relation.

On suppose donc que → est une relation binaire sur un ensemble T, et on rappelle les

d´efinitions suivantes

D´efinition 2.2 – → est r´eflexive si∀t t→t.

– → est sym´etrique si∀t ∀t

0

t→t

0

⇒t

0

→t.

– → est antisym´etrique si∀t∀t

0

((t→t

0

)∧(t

0

→t))⇒t=t

0

.

– → est transitive si∀t ∀t

0

∀t

00

((t→t

0

)∧(t

0

→t

00

))⇒t→t

00

.

Les diff´erentes fermetures de→ seront d´esign´ees de la mani`ere suivante :

– →

=

est la fermeture r´eflexive.

– →

+

est la fermeture transitive.

– →

est la fermeture r´eflexive transitive.

– ↔ est la fermeture sym´etrique.

– ↔

est la fermeture r´eflexive, sym´etrique et transitive.

La fermeture r´eflexive, sym´etrique et transitive est appel´eerelation d’´equivalenceou de

conver-sion. On dira alors qu’un ´el´ement t∈T

– est r´eductiblesi, et seulement si il existet

0

tel quet→t

0

;

– est en forme normalesi, et seulement si il n’est pas r´eductible ;

– est une forme normale de ssi, et seulement si s→

t ett est en forme normale. On note

alorst=s↓.

Remarque: Si→ est une relation sur l’ensemble des termes, une forme normale d’une

substi-tution est d´efinie par xσ ↓= (xσ) ↓ pour tout x ∈ Dom(σ). On dira alors qu’une substitution

est une substitution normalis´ee (ou substitution irr´eductible) si elle co¨ıncide avec l’une de ses

formes normales.

Les relations binaires sont souvent utilis´ees pour faire des comparaisons. Nous en

profi-tons pour rappeler ici quelques d´efinitions utiles sur les relations d’ordre et leurs variantes.

D´efinition 2.3 Une relation binaire sur un ensembleE est

– unordre strict si elle est non r´eflexive et transitive ;

– unquasi-ordre si elle est r´eflexive et transitive ;

– unordre si elle est r´eflexive, antisym´etrique et transitive ;

– un (quasi-) ordre total si x6y ou y6xpour tousx, y ∈E.

Un ordre strict est g´en´eralement not´e avec le symbole<. Si<est un ordre strict, et si on d´efinit

6parx6y six < youx=y, alors6est un ordre ; si6est un ordre, alors <d´efinie parx < y

si x6y etx6=y est un ordre strict ; enfin si 6est un quasi-ordre, x≷y six 6y et y6x est

une relation d’´equivalence, etx < y six6y ety x est un ordre strict.

2.1. Relation binaire sur un ensemble

Exemple 2.1 SoitE un ensemble, etE

le mono¨ıde libre engendr´e parE. On dit queuest un

pr´efixede v, et on noteu6v, s’il existeu

0

∈E

tel quev=uu

0

. La relation 6ainsi d´efinie est

alors une relation d’ordre.

Une propri´et´e fondamentale des ordres est la bonne fondation.

D´efinition 2.4 Un (quasi-) ordre 6 est un (quasi-) ordre bien-fond´e (ou (quasi-) ordre

noeth´erien), si, et seulement si, il n’existe pas de suites infiniment d´ecroissantes du type

s

0

> s

1

> s

2

> . . ..

Nous pr´esentons ci-dessous trois constructions g´en´erales de (quasi-)ordres bien fond´es.

D´efinition 2.5 Pour tout entieritel que 1≤i≤n, supposons que6

i

soit un (quasi-)ordre bien

fond´e sur un ensembleE

i

. D´efinissons le (quasi-)ordre6

n

sur le produit cart´esienE

1

×. . .×E

n

par (x

1

, . . . , x

n

)6

n

(y

1

, . . . , y

n

) six

i

6

i

y

i

pour touti.

Proposition 2.1 Le quasi-ordre6

n

ainsi d´efini est bien-fond´e si, et seulement si chaque6

i

est

bien fond´e.

D´efinition 2.6 Pour tout entieritel que 1≤i≤n, supposons que6

i

soit un (quasi-)ordre bien

fond´e sur un ensembleE

i

. D´efinissons le (quasi-)ordre6

lex

sur le produit cart´esienE

1

×. . .×E

n

par (x

1

, . . . , x

n

)6

lex

(y

1

, . . . , y

n

) six

i

6

i

y

i

pour touti, ou il existeitel quex

j

=y

j

(oux

j

j

y

j

dans le cas d’un quasi-ordre) pour toutj < i etx

i

<

i

y

i

.

Proposition 2.2 Le (quasi-)ordre 6

lex

ainsi d´efini est bien-fond´e si, et seulement si chaque6

i

est bien fond´e.

Remarque:Lorsque tous les6

i

sont ´egaux `a un mˆeme (quasi-)ordre 6sur un ensemble E,6

n

et6

lex

d´esignent alors respectivement l’extension cart´esienne et l’extension lexicographique de

6au produit cart´esienE

n

.

Unmulti-ensembleest un ensemble avec occurences multiples de ses ´el´ements. Plus pr´ecis´ement,

si E est un ensemble, un multi-ensemble sur E est une application M : E → N; M(x) est

alors le nombre d’occurences de x dans M, pour x ∈ E. Les ´el´ements d’un multi-ensemble M

sont les ´el´ements x de E tels que M(x) 6= 0. On utilise aussi une notation ensembliste pour les

multi-ensembles : on ´ecrira par exempleM ={{a, a, a, c}}, au lieu de M(a) = 3, M(c) = 1, et

M(x) = 0 six6=a, c. L’ensemble des multi-ensembles finis sur E est not´eM (E).

D´efinition 2.7 Soit 6 un quasi-ordre sur E; l’extension 6

mul

de 6 `a M(E) est d´efinie par

M 6

mul

M

0

siM est obtenu `a partir deM

0

en rempla¸cant une occurence d’un ´el´ementxde M

0

par un multi-ensemble d’´el´ements tous plus petits (ou ´equivalents) `ax pour le (quasi-)ordre6.

De fa¸con plus op´erationnelle, les r`egles suivantes d´ecrivent l’extension multi-ensemble stricte

<

mul

:

Bigger M ∪ {t}>

mul

N ∪ {s} M∪ {t}>

mul

N

sit > s

Erase M∪ {t}>

mul

N ∪ {t} M >

mul

N

Success M∪ {t}>

mul

∅ T

Proposition 2.3 [DER 79b] Si 6est bien-fond´e,6

mul

est ´egalement bien-fond´e.

Un des probl`emes op´erationnels essentiels du calcul, tel qu’il est pratiqu´e `a travers la

program-mation, est celui de la terminaison.

D´efinition 2.8 La relation →est terminante (ou fortement normalisante, ou noeth´erienne, ou

bien fond´ee) si toute s´equence de r´eductions est finie.

Remarque:On dit qu’elle est faiblement terminante (ou faiblement normalisante) si tout terme

admet une forme normale.

Exemple 2.3 La relation t→t

0

est terminante, mais pas t→t.

La confluence est une propri´et´e fondamentale de toute mod´elisation du calcul comme processus

de r´eduction : elle signifie l’ind´ependance du r´esultat du calcul vis `a vis du chemin de r´eduction

suivi.

D´efinition 2.9 La relation binaire →surT estconfluente entsi, pour toutt

1

, t

2

, sit→

t

1

et

t→

t

2

, il existe t

0

tel quet

1

t

0

ett

2

t

0

La confluence a comme cons´equence que la relation de conversion s’identifie `a la r´eduction `a un

mˆeme terme : c’est la propri´et´e de Church-Rosser

Proposition 2.4 Si la relation → est confluente, alors x ↔

y ´equivaut `a l’existence de z tel

quex→

z ety→

z.

Une relation terminante et confluente est alors appel´eeconvergente.

D´efinition 2.10 La relation binaire→surT estconvergentesi elle est confluente et terminante.

Documents relatifs