3.2 Classification des systèmes de réécriture de termes
3.2.3 Systèmes suffixes
−→
R
est non récursive, et donc évidemment pas non plus rationnelle.
3.2.3 Systèmes suffixes
La famille des systèmes de réécriture clos de termes, qui est une sous-famille
des systèmes suffixes, a déjà été étudiée par plusieurs auteurs. En particulier,
Dau-chet et Tison [DT85] ont montré que les dérivations des systèmes clos peuvent être
reconnues par un certain type d’automates à composantes appelés transducteurs
Classification des systèmes de réécriture de termes 85
d’arbres clos (GTT). Nous utilisons des arguments similaires afin de démontrer
que, d’une façon plus générale, tout système suffixe a une dérivation rationnelle.
Après avoir introduit une propriété des systèmes suffixes vis-à-vis de la notion
deréécriture suffixe, nous montrons que la relation de dérivation de tout système
suffixe est rationnelle. Enfin, nous établissons la preuve que l’image et l’image
inverse de tout langage régulier de termes par la dérivation d’un système suffixe
sont régulières, et qu’il est possible de construire de façon effective un automate
les reconnaissant.
3.2.3.1 Réécriture suffixe
Les systèmes de réécriture clos sont les systèmes dont les règles ne contiennent
pas de variables. Par conséquent, ils peuvent seulement réécrire des sous-termes
(suffixes) du terme fourni. La réécriture suffixe peut être vue comme l’application
d’une sorte de règles d’automate à pile sur une pile arborescente, où les seules
portions autorisées à la modification sont les parties environnant les feuilles (ou
constantes).
Étant donné un système de réécriture non clos R sur F avec des variables
dans X, on définit une notion restreinte de réécriture par R sur les termes de
T(F ∪Y), où Y est un ensemble quelconque de variables. Cette notion, inspirée
par la réécriture close et appelée réécriture suffixe, considère temporairement
les variables de Y comme autant de constantes, tandis que la substitution des
variables des règles de R est restreinte aux éléments de Y. Nous appelons ceci
réécriture suffixe, puisque une telle restriction n’autorise l’application des règles
de réécriture que sur des suffixes des termes considérés.
Définition 3.20. Pour tout système de réécriture R sur F à variables dans X,
et pour tout ensemble de variables Y disjoint de F
0, on définit la relation de
réécriture suffixe deR comme
−→
|R
=
(c[lσ],c[rσ])∈T(F ∪X)
2|(l,r)∈R∧ c∈C
1(F)∧ σ∈Y
XoùY
Xest l’ensemble des applications (ou substitutions) de X vers Y.
La raison pour laquelle on ne traite pas simplement Y comme un ensemble
de nouvelles constantes, ce qui reviendrait à associer à tout système de
réécri-ture un système clos sur F ∪Y, est que nous souhaitons comme d’habitude que
deux termes ne différant que par un nommage de leurs variables (dansY) soient
considérés égaux.
3.2.3.2 Décomposition des dérivations
Les systèmes suffixes ont un comportement particulier par rapport à leur
réécriture suffixe. En effet, il est toujours possible de réordonner la dérivation de
tout termeten un termespar un système suffixe afin de pouvoir la décomposer en
deux phases. Premièrement, un préfixe¯tdetest lu, et un certain nombre d’étapes
de réécriture suffixe y sont appliquées. Une fois que cette première séquence de
réécritures est terminée, ¯t a été réécrit en un préfixe ¯s des, pour ne jamais plus
être modifié au cours de la séquence de dérivation. Dans un second temps, le
reste de test dérivé selon la même décomposition en deux phases, jusqu’à ce que
l’ensemble des réécritures ait été effectué. Par conséquent, on peut dire que la
dérivation d’un système suffixe est équivalente à sa dérivation suffixe « itérée ».
Lemme 3.21. Pour tout système de réécriture suffixe de termes R,
s −→
k>0 Rt ⇐⇒
∃ s,¯¯t∈T(F,X), σ,τ ∈S(F,X), k
′>0, s= ¯sσ ∧ t = ¯tτ
∧ s¯
k ′−→
| R¯
t ∧ ∀x∈Var(¯s) ∩ Var(¯t), σ(x)
≤−→
k−k′ Rτ(x).
Démonstration. Remarquons tout d’abord que comme s−→
|R
t =⇒ sσ −→
R
tσ
pour toute substitution closeσ, l’implication réciproque est triviale. Démontrons
l’implication directe par récurrence surk:
k = 1: s −→
R
t implique qu’il existe un contexte c et une substitution σ
tels que s = c[lσ] et t = c[rσ]. Donc par définition de la réécriture suffixe
c[l] −→
|R
c[r], et pour toute variable x on a bien sûrσ(x)−→
0 Rσ(x).
k ⇒k+ 1: soit s−→
k Rs
′−→
l,r pt avec lRr, s= ¯sσ et s
′= ¯s
′σ
′. On distingue
deux cas :
p∈Pos( ¯s
′): s’il existe un contexte c tel que s¯
′= c[l], alors on a s¯ −→
k |R
¯
s
′−→
|R
c[r] et la condition est vérifiée pour k
′=k et t = (c[r])σ
′. Si ce
n’est pas le cas, alors il doit exister un contexte cet une substitution
non-triviale ω
′telle que s¯
′= (c[l])ω
′. CommeR est suffixe et comme,
par hypothèse de récurrence, ¯s−→
∗ |R
¯
s
′, il doit exister ω telle que s¯ =
(c[l])ω et pour toute variable x commune à l et r, ω(x)−→
∗ |R
ω
′(x). On
peut donc écrires sous la forme (c[l])ωσ, t sous la forme(c[r])ω
′σ
′, et
vérifier que la condition est vérifiée avec k
′= 1.
p /∈Pos( ¯s
′): par hypothèse de récurrence, on peut trouver k
′> 0 tel que
pour toutxcommun às¯ets¯
′,σ(x)
≤−→
k−k′R
σ
′(x). De plus, en appliquant
la règle (l,r) à l’un des termes σ
′(x), on obtient σ
′(x) −→
l,r
τ(x). On a
donct= ¯s
′τ,s¯−→
k′ |R
¯
s
′etσ(x)
k−−→
k′+1R
τ(x)pour toutx commun à¯sets¯
′,
ce qui vérifie la condition et clôt la démonstration.
Classification des systèmes de réécriture de termes 87
Une autre propriété intéressante est que, pour tout système reconnaissable
linéaire, une séquence de réécriture suffixe est toujours équivalente à une séquence
en deux parties, dont la première ne fait que consommer des sous-termes suffixes
du terme d’entrée, et dont la seconde ne fait que produire de nouveaux
sous-termes à leur place.
Lemme 3.22. Pour tout système de réécriture reconnaissable et linéaire R de
termes surF etX, il existe un alphabet gradué fini Qet trois systèmes de
réécri-ture finis
– R
−⊆ {px−→f p
1x
1. . . p
nx
n| f ∈F, p,p
1, . . . ,p
n∈Q, x,x
1, . . . ,x
n∈X
∗}
– R
=⊆ {px−→qy | p,q ∈Q, x,y ∈X
∗}
– R
+⊆ {f p
1x
1. . . p
nx
n−→px | f ∈F, p,p
1, . . . ,p
n∈Q, x,x
1, . . . ,x
n∈X
∗}
tels que s −→
∗ | Rt ⇐⇒ s −→
∗ | R+∪R=◦ −→
∗ | R−∪R=t.
Démonstration. Soit R un système de réécriture reconnaissable linéaire sur F et
X. Soit (A
i,B
i)
i∈[1,l]un ensemble de couples d’automates descendants, chacun
acceptant un ensemble de règles de R. L’ensemble des états de contrôle de A
i(resp.B
i) sera notéP
i(resp. Q
i). Sans perdre de généralité, nous supposons que
tous lesP
ietQ
isont disjoints entre eux. Nous définissons aussi l’unionP de tous
les ensembles P
iet l’union Q de tous les Q
i. Pour tout état p∈P ∪Q, soit ν(p)
l’ensemble de toutes les frontières de variables possibles dans le langage accepté
depuis l’état initial p par l’automate correspondant, c’est à dire l’ensemble de
tous les n-uplets de variables apparaissant dans les termes de ce langage, lus de
la gauche vers la droite. Comme le nombre total de variables du système est fini
et que les systèmes considérés sont linéaires, on peut supposer que|ν(p)|= 1pour
tout p (si ce n’est pas le cas, il suffit d’ajouter un état de contrôle à l’automate
pour chacune des frontières possibles, qui sont en nombre fini).
Dans un premier temps, nous définissons un nouveau système de réécriture
R
′sur F ∪P ∪Q et X. Les alphabets d’états P et Q sont considérés comme
des alphabets gradués dont les symboles sont tous d’arité égale au nombre de
variables apparaissant dans les termes du langage associé (qui est, nous le
rap-pelons, supposé unique). Par exemple, supposons que depuis l’état p l’automate
A accepte le langage g
∗f xy. Dans ce cas, p sera considéré comme un symbole
binaire (et ν(p) =xy).
Nous donnons à R
′l’ensemble de règles suivant. Pour toute transition pf →
p
1. . . p
mdans un certain A
itelle que ν(p) = ν(p
1). . . ν(p
m) =x
1. . . x
n, on a :
f p
1ν(p
1). . . p
mν(p
m) → px
1. . . x
n∈ R
′.
Les règles de cette forme permettent à R
′de consommer une partie gauche de
règle de R dans le terme d’entrée. Pour toute transition qf → q
1. . . q
md’un
certain B
itelle queν(q) =ν(q
1). . . ν(q
m) = x
1. . . x
n, on a:
qx
1. . . x
n→ f q
1ν(q
1). . . q
mν(q
m) ∈ R
′.
Les règles de cette forme permettent à R
′de produire une partie droite de règle
de R dont une partie gauche correspondante a été précédemment consommée.
Remarquons que, dans ces deux derniers cas, si f =xpour une certaine variable
xon obtient des règles de la formex→pxetqx→xrespectivement. Enfin, pour
tout couple (p
0,q
0) d’états initiaux d’un certain couple (A
i,B
i), avec ν(p
0) =
x
1. . . x
netν(q
0) =x
k1. . . x
kmon a :
p
0x
1. . . x
n→ q
0x
k1. . . x
km∈ R
′.
Ceci simule l’application d’une règle de réécriture de l’ensemble L(A
i)×L(B
i)
en initiant un calcul de l’automate B
iquand un calcul acceptant inversé de A
ia été effectué avec succès. Une fois restreinte au domaine T(F)
2, la relation de
dérivation de R
′coïncide avec celle de R:
∀s,t ∈T(F), s −→
∗R
t ⇐⇒ s −→
∗R′
t. (3.7)
La démonstration de cette propriété ne présente aucune difficulté particulière et
ne sera donc pas détaillée. Dans le reste de la démonstration, p,q et toutes leurs
variations désigneront des états de contrôle d’automates dans P ∪Q. Les mots
de variables dansX
∗seront notéesu,v,u
i,v
i, . . ., etσ désignera un renommage de
variable.
Dans un second temps, nous définissons R
+comme {f p
1u
1. . . p
nu
nR
′pu}
(règles de « consommation »), R
−comme{qv R
′f q
1v
1. . . q
nv
n}(règles de «
pro-duction ») et R
=comme la plus petite relation binaire dans T(F,X)
2fermée par
les règles d’inférence suivantes :
pu R
=pu (1)
pu R
′qv
pu R
=qv (2)
pu R
=qv
puσ R
=qvσ (3)
qu R
=q
′v q
′v R
=q
′′z
qu R
=q
′′z (4)
pu R
−f p
1u
1. . . p
nu
nf q
1v
1. . . q
nv
nR
+qv ∀i, p
iu
iR
=q
iv
ipu R
=qv (5)
Comme F,P,Q et X sont finis, et comme chaque symbole p de P ∪ Q a une
arité bien définie, R
=est fini et calculable de façon effective. Mentionnons une
propriété simple de R
=:
∀pu,t,qv∈T(F,X), pu −→
∗ | R−∪R=t −→
∗ | R+∪R=qv =⇒ pu R
=qv. (3.8)
Classification des systèmes de réécriture de termes 89
Ceci peut être prouvé par induction sur la hauteurk du terme t:
k = 0: aucune règle de R
−ou R
+n’est appliquée, donc pu−→
∗ |R=
qv. Ainsi,
d’après la règle d’inférence (4), la propriété est vraie.
k ⇒k+ 1: décomposons la séquence de dérivation entre s ett:
pu −→
| R=p
′u
′−→
| R−f p
1u
1. . . p
nu
n ∗−→
| R−∪R=◦ −→
∗ | R+∪R=f q
1v
1. . . q
nv
n−→
| R+q
′v
′−→
| R=qv.
Par hypothèse de récurrence, f p
1u
1. . . p
nu
n∗
−→
|R=
f q
1v
1. . . q
nv
n, donc d’après
la règle d’inférence (5), p
′u
′R
=q
′v
′. Enfin, d’après la règle d’inférence (4),
pu R
=qv.
Il reste à démontrer queR
+,R
=etR
−vérifient bien la propriété énoncée. D’après
(3.7), il suffit de montrer que −→
∗ |R+∪R=
◦ −→
∗ |R−∪R=
= −→
∗ |R′
. L’inclusion directe équivaut
à
R=−→
|⊆ −→
∗ |R′
. Supposons que s−→
R=|t pour deux termes s et t quelconques. La
règle de R
=utilisée dans cette étape de réécriture peut seulement être définie
à l’aide des règles d’inférence ci-dessus. On peut donc raisonner par récurrence
sur la séquence de règles d’inférence utilisée pour la définir pour démontrer qu’il
doit s’ensuivre ques−→
∗ |R′
t. Ce raisonnement ne pose pas de difficulté et n’est pas
détaillé ici.
Pour montrer la réciproque nous allons établir, par récurrence sur k, la
pro-priété suivante :
∀k, s −→
k | R′t =⇒ ∃ c∈C
1(F), (q
iu
i)
i∈[n]∈T(F,X),
s −→
∗ | R+∪R=c[q
1u
1. . . q
nu
n] −→
∗ | R−∪R=t.
k = 0: s =t =c, n= 0, donc trivialement s −→
∗ | R+∪R=c −→
∗ | R−∪R=t.
k ⇒k+ 1: soits −→
k | R′t −→
|l,r
t
′aveclR
′r. Par hypothèse de récurrence,
s −→
∗ |R+∪R=
c[q
1u
1. . . q
nu
n] −→
∗ |R−∪R=
t=c[t
1. . . t
n].
Trois cas sont possibles :
séquence de dérivation suivante est valide :
s −→
∗ | R+∪R=c
′[q
1u
1. . . q
nu
nl] −→
| R+c
′[q
1u
1. . . q
nu
nq
lu]
−→
| R=c
′[q
1u
1. . . q
nu
nq
rv](car l R
′r)
−→
| R−c
′[q
1u
1. . . q
nu
nr] −→
∗ | R−∪R=c
′[t
1. . . t
nr] =t
′.
– ∃i, t
i= ¯t
i[l]: la seule façon de produire t
idepuis q
iu
iest selon les
étapes
q
iu
i ∗−→
| R−∪R=¯
t
i[q
lu]−→
| R−t
i.
Donc la séquence de dérivation suivante est valide :
s −→
∗ | R+∪R=c[q
1u
1. . . q
nu
n] −→
∗ | R−∪R=c[q
1u
1. . .t¯
i[q
lu]. . . q
nu
n]
−→
| R=c[q
1u
1. . .t¯
i[q
rv]. . . q
nu
n]−→
| R−t
′.
– ∃c
′, j > i ≥ 1, t = c
′[t
1. . . t
il t
j+1. . . t
n], avec l = ¯l[t
i+1. . . t
j]. La
séquence de dérivation entres ett
′peut alors s’écrire
s −→
∗ | R+∪R=c[q
1u
1. . . q
nu
n] −→
∗ | R−∪R=c[t
1. . . t
n]
∗−→
| R+c[t
1. . . t
iq
i′+iu
′i+1. . . q
j′u
′jt
j+1. . . t
n]
−→
| R+c
′[t
1. . . t
iq
lu t
j+1. . . t
n] −→
| R=c
′[t
1. . . t
iq
rv t
j+1. . . t
n]
−→
| R−c
′[t
1. . . t
ir t
j+1. . . t
n] =t
′Remarquons que pour toutk ∈[i+ 1,j],q
ku
k∗
−→
| R−∪R=t
k ∗−→
| R+∪R=q
k′u
′k. Donc
d’après (3.8),q
ku
kR
=q
′ ku
′ k, et donc
s −→
∗ | R+∪R=c[q
1u
1. . . q
nu
n] −→
∗ | R+∪R=c
′[q
1u
1. . . t
iq
lu q
j+1u
j+1. . . q
nu
n]
∗−→
| R−∪R=c
′[t
1. . . t
ir t
j+1. . . t
n] =t
′.
Ceci conclut la démonstration du lemme 3.22.
Le lemme 3.22 peut être reformulé de la façon suivante : un couple de termes
(s,t)appartient à la dérivation du systèmeRsi et seulement si il existe un contexte
c tel que s = c[s
1. . . s
n], t = c[t
1. . . t
n] et pour tout i ∈ [1,n], il existe un terme
q
ix
itel que s
i−→
∗ |R+∪R=
q
ix
ietq
ix
i−→
∗ |R−∪R=
Classification des systèmes de réécriture de termes 91
3.2.3.3 Rationalité de la dérivation
Maintenant que la structure des dérivations de systèmes suffixes est mieux
comprise, nous sommes en mesure de construire une grammaire engendrant la
relation de dérivation d’un système suffixe quelconque.
Théoreme 3.23. Tout système de réécriture suffixe linéaire reconnaissable de
termes R a une dérivation rationnelle.
Démonstration. Soit R un système suffixe linéaire reconnaissable sur T(F,X).
SoientR
+, R
=etR
−les systèmes de réécriture construits au lemme 3.22. SoitN
un ensemble de paires de la formeu|v oùuetv sont deux mots de termes linéaires
dans Ran(R
+∪R
=)
∗et Dom(R
−∪R
=)
∗respectivement. Rappelons que Ran et
Dom sont définis à renommage des variables près. On peut donc imposer à u et
v de partager le même ensemble de variables (Var(u) =Var(v)), et qu’il n’existe
aucun couple de sous-mots stricts u
′et v
′de u et v tels que Var(u
′) 6= Var(v
′)
(c’est à dire qu’il ne doit pas être possible de séparer u|v en deux non-terminaux
corrects). Ajouté au fait queF est fini et u et v sont linéaires, ceci implique que
N est fini pour un certain renommage des variables fixé. Donc, étant donné un
axiomeI, on peut construire une grammaireGdont l’ensemble de non-terminaux
estN ∪ {I,I
′}, possédant l’ensemble fini de productions suivant :
∀ f ∈F,
I −→ f I
11. . . I
1n× f I
21. . . I
2net I
′−→ f I
′1. . . I
′n(3.9)
∀ px∈Dom(R
−∪R
=)∩Ran(R
+∪R
=),
I −→ px|px (3.10)
∀ u
′−→
∗ | R=u, v −→
∗ | R=v
′, u
′∈Ran(R
+)
∗, v
′∈Dom(R
−)
∗,
u|v −→ u
′|v
′(3.11)
∀ u
1=p
1x
1. . . p
ix
i, u
2=p
j+1x
j+1. . . p
nx
n,
v =q
1y
1. . . q
my
m, f p
i+1x
i+1. . . p
jx
jR
+px,
u
1px u
2|v −→ µ
1. . . µ
i(f µ
i+1. . . µ
j)µ
j+1. . . µ
n× ν
1. . . ν
m(3.12)
∀ u=p
1x
1. . . p
nx
n, v
1=q
1y
1. . . q
iy
i,
v
2=q
j+1y
j+1. . . q
my
m, qy R
−f q
i+1y
i+1. . . q
jy
j,
u|v
1qy v
2−→ µ
1. . . µ
n× ν
1. . . ν
i(f ν
i+1. . . ν
j)ν
j+1. . . ν
m(3.13)
Dans les règles (3.12) et (3.13), tous les(µ
k)
k∈[1,n]et(ν
k)
k∈[1,m]sont des variables
appartenant à des instances de non-terminauxu
′|v
′∈N oùu
′etv
′sont construits
à partir des termes (p
kx
k)
k∈[1,n]et (q
ky
k)
k∈[1,m]respectivement. Les variables µ
1à µ
n(resp. ν
1à ν
m) apparaissent seulement dans la première (resp. la seconde)
projection de tout non-terminal. Notons que cette instanciation est unique par
construction de l’ensembleN. Elle est également toujours possible puisque chaque
règle de R est par hypothèse linéaire.
Soit ρ la substitution qui associe à chaque variable de non-terminal (u|v)
ile
terme (u)
isi i ∈ [1,|u|] et (v)
isi i ∈ [|u|+ 1,|u|+|v|], et à chaque variable de
non-terminal (I
ij
)
j∈[1,2]une variable x
i. Il est clair d’après la forme des règles de
G
0que
I −→
∗ G0s × t ⇐⇒ sρ −→
∗ | R+∪R=◦ −→
∗ | R−∪R=tρ. (3.14)
Nous ne détaillerons pas la démonstration de cette observation. Remarquons
que cette grammaire fonctionne de manière fort similaire à un transducteur clos
d’arbres, qui est le formalisme utilisé par [DT85] pour engendrer les dérivations
d’un système clos. L’unique différence est qu’il nous faut garder la trace des
va-riables apparaissant dans les projections gauche et droite de la relation afin de
pouvoir redémarrer la réécriture aux positions correctes. Ajoutons maintenant à
G
0l’ensemble de règles
∀ x∈X tel que xRpx, qxRx, px|qx −→ I (3.15)
px| −→ I
′(3.16)
et appelons cette nouvelle grammaire G. Ces dernières règles permettent à la
dérivation de continuer correctement après qu’une première séquence de réécriture
suffixe a été effectuée, en créant de nouvelles instances de l’axiome entre les feuilles
supposées être étiquetées par la même variable. D’après le lemme 3.21,Gengendre
∗
−→
R.
Remarque 3.24. Remarquons que la grammaire construite dans la preuve
précé-dente est conforme à la définition des grammaires de transduction (cf. définition
3.12. Les dérivations des systèmes suffixes sont donc une sous-famille des
trans-ductions rationnelles.
3.2.3.4 Préservation de la régularité
Contrairement aux systèmes descendants, les dérivations des systèmes suffixes
préservent la régularité des langages de terme, à la fois par application directe
et inverse. Ceci peut être vu comme une conséquence de la remarque 3.24, mais
nous fournissons néanmoins une construction directe.
Proposition 3.25. L’image et l’image inverse d’un langage régulier de termes
par la dérivation d’un système de réécriture suffixe linéaire reconnaissable sont
régulière.
Classification des systèmes de réécriture de termes 93
Démonstration. Soit R un système suffixe linéaire reconnaissable surT(F),G la
grammaire engendrant sa dérivation telle que construite dans la démonstration
du théorème 3.23, et N ∪ {I,I
′} l’ensemble de non-terminaux de G. Soit A un
automate fini descendant acceptant un langage régulier de termes L. Supposons
que Q
Aest l’ensemble d’états de contrôle de A, disjoint de F et de X, et que
q
0∈Q
Aest son unique état initial. Soit Q
′A
une copie disjointe de Q
A, on définit
la grammaire G
Aayant pour non-terminaux Q
A∪Q
′A
∪ {(r
1,u
1). . .(r
n,u
n)|v |
r
1, . . . ,r
n∈Q
A∧u
1. . . u
n|v ∈N}et possédant l’ensemble de productions suivant :
– Pour toute transition rf −→
A
f r
1. . . r
n:
r −→ f(r
1)
1. . .(r
n)
1× f(r
1)
2. . .(r
n)
2(3.17)
r
′−→ f r
′1. . . r
n′(3.18)
– Pour tous r ∈Q
A, px|px∈N:
r −→ (r,px)|px, (3.19)
– Pour toute règlep
1x
1. . . p
nx
n|v −→ p
′1
x
′1
. . . p
′n
x
′n
|v
′de type (3.11) dansG
et mot d’états de contrôler
1. . . r
n∈Q
∗A
:
(r
1,p
1x
1). . .(r
n,p
nx
n)|v −→ (r
1,p
′1x
′1). . .(r
n,p
′nx
′n)|v
′(3.20)
– Pour toute règle u
1px u
2|v −→ s × t de type (3.12) dans G avec u
1=
p
1x
1. . . p
ix
i, u
2= p
j+1x
j+1. . . p
nx
net pour tout mot d’états de contrôle
r
1. . . r
ir r
j+1. . . r
n∈Q
∗A
:
(r
1,p
1x
1). . .(r
i,p
ix
i)(r,px)(r
j,p
jx
j). . .(r
n,p
nx
n)|v −→ s
′×t
′(3.21)
oùrf −→
A
f r
i+1. . . r
jets
′ett
′sont formés en remplaçant danssettchaque
occurrence de p
kdans une variable de non-terminal par (r
k,p
k), pour tout
k∈[1,n].
– Pour toute règle p
1x
1. . . p
nx
n|v −→ s×t de type (3.13) dans G et mot
r
1. . . r
n∈Q
nA
:
(r
1,p
1x
1). . .(r
n,p
nx
n)|v −→ s
′×t
′(3.22)
où s
′et t
′sont formés en remplaçant dans s et t chaque occurrence de p
kdans une variable de non-terminal par (r
k,p
k), pour tout k∈[1,n].
– Enfin, pour toute règle de la forme px|qx −→ I (resp. px| −→ I
′) dans
Get tout r∈Q
A:
(r,px)|qx −→ r (3.23)
On peut observer que, partant du non-terminal q
0, la grammaire G
Aengendre
exactement l’ensemble des couples(s,t)tels ques −→
∗R
tets∈L. Donc l’ensemble
de tous les t tels que (s,t)est engendré par G
Adepuis q
0est exactement l’image
deL par la dérivation de R:
L(G
A,q
0) = −→
∗ R(L).
Un automate reconnaissant ce langage de termes peut être construit en prenant
la projection à droite de G
A, et en traitant chacune de ses variables de
non-terminaux comme un non-terminal unaire. Les transitions de cet automate sont
données par les règles deG
Adécoupées en plusieurs règles sur ces non-terminaux
d’arité 1.
Remarquons que cette construction est parfaitement symétrique, et que la
synchronisation de G par un automate fini A aurait pu être effectuée sur la
seconde projection au lieu de la première, d’où le résultat réciproque.
Dans le document
Graphes infinis de présentation finie
(Page 95-105)