• Aucun résultat trouvé

La théorie de l'unication

N/A
N/A
Protected

Academic year: 2022

Partager "La théorie de l'unication"

Copied!
16
0
0

Texte intégral

(1)

La théorie de l'unication

(2)

Les Σ -algèbres

Σ: Ensemble de symboles de fonctionayant unearité n∈IN.

X : Ensemble devariables.

T(X,Σ) : Ensemble determessur X et Σ: x ∈ X

x ∈ T(X,Σ)

t1, . . . ,tn∈ T(X,Σ) f est d'arité n∈Σ f(t1, . . . ,tn)∈ T(X,Σ)

On écrit Var(t)l'ensemble de toutes les variables de t. Un terme t est clos si Var(t) =∅.

(3)

Les substitutions

Denition

Unesubstitution est une fonctionσ :X → T(Σ,X). Ledomained'une substitutionσ est l'ensemble Dom(σ)={x ∈ X |σ(x)6=x}.

Lecodomaine d'une substitutionσ est l'ensemble Codom(σ)={Var(σ(x))|x ∈Dom(σ)}.

Un renommageest une substitution injective σ t.q. σ(x) =y

∀x ∈Dom(σ).

Exemple :σ ={x/y,y/w}est un renommage. Toute permutation est un renommage mais pas l'inverse comme le montre l'exemple.

Si le domaine d'une substitution σ est nion note σ={x1/t1, . . . ,xn/tn} si σ(xi) =ti et xi ∈Dom(σ).

L'application d'unesubstitution à un terme est l'extensiondeσ aux termes donnée parσ(f(t1, . . . ,tn)) =f(σ(t1), . . . , σ(tn)).

(4)

Comparer deux substitutions

Soient σ etτ deux substitution. Lacomposition deσ avecτ est donnée par (σ◦τ)(x) =σ(τ(x)).

Exemple : {y/b,z/h(c)} ◦ {x/f(y),y/z}={x/f(b),y/h(c),z/h(c)}

La substitution σ est uneinstance de la substitution τ (ouτ estplus générale queσ), ce que l'on écrit σ ≤τ, ss'il existe une substitutionρ t.q.

pour toute variable x ∈ X,σ(x) = (ρ◦τ)(x).

Exemple : {x/f(y),y/z} est plus générale que{x/f(b),y/h(c),z/h(c)}

(5)

Identier deux substitutions

Remarque : La relation ≤n'est pas antysimmetrique.

Exemple : Soient σ1 ={x/y}et σ2 ={y/x}. On aσ1≤σ2 car σ1 ={x/y} ◦σ2.

On aσ2≤σ1 car σ2 ={y/x} ◦σ1. Mais σ1 6=σ2.

Exemple : Soient σ1 ={x/y}et σ3 ={x/y,z/w,w/z}. On aσ1≤σ3 car σ1 ={z/w,w/z} ◦σ3.

On aσ3≤σ1 car σ3 ={z/w,w/z} ◦σ1. Mais σ1 6=σ3.

Lemma

σ ∼σ0 ssi∃ un renommageρ t.q. σ =ρ◦σ0. Donc σ1 ∼σ2∼σ3 dans l'exemple précédent.

(6)

Substitution(s) principale(s)

Soit S en ensemble de substitutions etτ ∈ S. On dit que τ est principale ssi toute substitution σ∈ S est une instance deτ.

Exemple : SoitS ={σ1, σ2, σ3, σ4, σ5}, où σ1 ={x/y},σ2 ={y/x}, σ3={x/y,w/z,z/w},σ4 ={x/u,y/u} etσ5={x/a,y/a}.

Alors σ12 et σ3 sont principales pour S. En eet,

σ2, σ3, σ4, σ5≤σ1 etσ1, σ3, σ4, σ5≤σ2 et σ1, σ2, σ4, σ5 ≤σ3 Mais σ1 6≤σ4 etσ16≤σ5 (entre autres).

(7)

Unication comme solution d'un système d'équations

Denition

Deux termes A et B sont uniablesss'il existe une substitution σ t.q.

σ(A) =σ(B) (σ est donc un unicateurde A et B).

Uneéquation est une paire de termes de la forme A .

=B. On dit qu'elle est uniable ssi les termes A et B le sont.

Un système/problème d'équationsE est un ensemble d'équations. On dit qu'il estuniable ssi il existe une substitution qui est unicateur de toutes les équations de E. Cette substitution est appelée solutionde E.

On s'intéresse aux systèmes d'équationsnis.

Exemple : f(x,g(x,a))et f(f(a),y) sont uniables avec l'unicateur {x/f(a),y/g(f(a),a)}.

f(x,g(x,a))et f(f(a),f(b,a)) ne le sont pas.

(8)

L'unicité

1 On identie deux unicateursσ etσ0 d'un problèmeP s'ils ne diérent que par des renommage de variables, c'est à dire, si σ∼σ0.

2 On considère uniquement comme unicateurs deP les substitutions σ t.q. Dom(σ)⊆Var(P).

Exemple : SoitS ={x .

=y}. Prenons trois unicateurs principaux de S : σ1={x/y},σ2 ={y/x}et σ3 ={x/y,z/w,w/z}.

Alors σ12 (car [σ1]= [σ2]) etσ3 n'est plus considéré comme un unicateurs de S.

(9)

L'unicité

Module ces considérations,l'unicateur pricipal d'un problème P est unique modulo renommage, c'est à dire :

Si σ etσ0 sont deux unicateurs principaux de P, alors σ∼σ0.

(10)

Les formes résolues

Denition

Un système d'équations E est en forme résolue ssi il est de la forme {α1 .

=t1, . . . , αn .

=tn}, où

toutes les variables αi sont distinctes (i6=j impliqueαi 6=αj) aucune αi n'apparaît dans un tj (∀i, αi ∈/ S

1jnVar(tj))

Notation : Si E est un système en forme résolue{α1 .

=t1, . . . , αn .

=tn} on note E~ la substitution {α1/t1, . . . , αn/tn}.

(11)

Les règles de transformation

E∪ {s .

=s}

E (eacer) E∪ {t .

=α} t∈ X/ E∪ {α .

=t} (orienter) E ∪ {f(s1, . . . ,sn) .

=f(t1, . . . ,tn)}

E∪ {s1 .

=t1, . . . ,sn .

=tn} (décomposer) E∪ {α .

=s} α∈Var(E) α /∈Var(s) E{α/s} ∪ {α .

=s} (remplacer)

(12)

Algorithme d'unication d'un système E

1 On démarre avec un système E

2 On applique les règles de transformation tant qu'on peut, on obtient un problème P

3 Si le système P est en forme résolue

I alors renvoyer~P .

I sinon échec

(13)

Exemple

Soit P ={f(x,h(b),c) .

=f(g(y),y,c)}. f(x,h(b),c) .

=f(g(y),y,c) x . d

=g(y),h(b) .

=y,c .

=c x . e

=g(y),h(b) .

=y x . o

=g(y),y .

=h(b) x . r

=g(h(b)),y .

=h(b)

L'unicateur principal de P est σ={x/g(h(b)),y/h(b)}. Ainsi,σf(x,h(b),c) =f(g(h(b)),h(b),c)=σf(g(y),y,c).

(14)

Vers la correction et la complétude de l'algorithme

Lemma

1 L'algorithme termine.

2 Siσ est un unicateur d'une forme résolue P, alorsσ =σ~P.

3 Si une règle transforme un problème P dans un problème S, alors les solutions de P et S sont les mêmes.

4 Si E est en forme résolue, alors ~E est solution du problème E.

(15)

Démonstration de la terminaison

Une variable est non résoluedans un problème E si elle y apparaît plus d'une fois. La terminaison de l'algorithme d'unication est par récurrence sur le triplethn1,n2,n3imuni de l'ordre lexicographique, où

n1 : nb de variables pas résolues n2 : taille du problème

n3 : nb d'équations de la forme t=x En eet,

n1 n2 n3 Remplacement >

Eacer ≥ >

Decomposer = >

Orienter = = >

(16)

Correction et complétude de l'algorithme

Théorème : (Correction) Si l'algorithme trouve une substitution~S pour le problème P, alors P est uniable et ~S est un unicateur principal de P.

Autrement dit,

Si P n'est pas uniable, l'algorithme échoue.

Théorème : (Complétude) Si le système P est uniable, alors l'algorithme calcule l'unicateur principal de P.

Autrement dit,

Si l'algorithme échoue, alors le système P n'est pas uniable.

Références

Documents relatifs

[r]

Les parterres de fleurs sont les

Dans un anneau principal, un élément p est irréductible si, et seulement si, p est

La seconde fait appel à des calculs simples de coefficients binomiaux et aborde quelques notions de cours (indépendance, loi de probabilité, espérance, …) dans un cadre simple..

Rappelons rapidement les éléments nécessaires à cette étude : Dans la théorie que nous avons développée ( 1 ) des rotateurs relativistes ceux-ci sont supposés

Donc, exp(·) ´ etant une fonction continue, cette limite existe p.s.. sont

Depuis cette date, l’entreprise réduit chaque année la quantité de déchets qu’elle rejette de 5% par rapport à la quantité rejetée l’année précédente, mais elle produit

Théorème : (Complétude) Si le système P est uniable, alors l'algorithme calcule l'unicateur principal de P..