4.3 Aepteurs nis
4.3.1 Automates alternants sur Γ k
La notion d'alternane a été introduite dans [CKS81℄ et a été étendue à de nombreuxmodèleslassiquesdel'informatiquethéorique.Elleautorisel'exéution simultanée de plusieurs transitions d'un automate. Pour donner un sens à ette notion,dans notre adre, ilne faut plus engendrer les piles en partant de la pile vide omme 'est le as pour les automates sur
Γ
k (f. dénition 4.3.1): il faut fairepartir l'exéution de lapileàaepter. Commele jeud'opérationsOps
k est symétrique,ehangementde pointdevuen'a pasde onséquene.Nousverrons dans lesous-paragraphe4.6que e n'est pas leas sinous onsidéronsCOps
k au lieudeOps
k.Dénition 4.3.10. Un automate
A
alternant surΓ
k est un uplet(Q,I,∆)
oùQ
est un ensemble ni d'états,I ⊆ Q
est l'ensemble des états initiaux et∆ ⊆
Q×Sing(Γ
tk
)×2
Q×Γok est l'ensembledes transitions.
Une transition
δ = (p,t,{(q
1,γ
1), . . . ,(q
n,γ
n)})∈∆
sera notéep,T →(q
1,γ
1)∧
. . .∧(q
n,γ
n)
. Intuitivement, l'automateA
dans la onguration(q,s)
oùq ∈ Q
et
s ∈ Stacks
k(Γ)
peut, sis
satisfait le test deT
(i.e. pour toutt ∈ T
,s ∈
Dom
(R(t))
), lanern
exéutions en parallèle. Lai
èmeexéution ommene dans laonguration
(q
i,R(γ
i)(s))
(siR(γ
i)(s)
est bien dénie).Nous introduisons quelques notations permettant de travailler ave es transi-tions. Pour toute transition
δ = (p,T,A) ∈ ∆
, nous noteronsHead(δ) = p
,Test(δ) =T
etAct(δ) = A
.un arbre ni étiqueté par
Γ
ok et
C
est une appliation deV
T dans l'ensembleQ×Stacks
k(Γ)
. Pour tout n÷udu ∈ V
T dont l'image parC
est(p,s)
, il existe une transitionδ
u=p,T →(q
1,γ
1)∧. . .∧(q
n,γ
n)∈∆
telle que:pour tout
t ∈T
,s∈
Dom(R(t))
,pourtout
i∈[1,n]
,ilexistev
i∈V
T telqueC(v
i) = (q
i,R(γ
i)(s))
etu−→
γiT
v
i. Nous noterons dans lasuiteΦ
E l'appliation deV
T dans∆
qui assoieàtoutu ∈ V
T, la transitionδ
u appliquée au n÷udu
dans l'exéutionE
. Dans la suite, nousonsidérerons lesexéutions àisomorphismeprès(i.e.nousne distinguerons pas deux exéutions qui ne diérent que par le nommage des sommets de leurs arbres).Nous dirons qu'une exéution
E = (T,C)
ommene ens ∈ Stacks
k(Γ)
par l'étatq∈ Q
(resp. par latransitionδ ∈∆)
siC(r(T)) = (q,s)
(resp.Φ
E(r(T)) =
δ
).L'automate
A
aeptes ∈ Stacks
k(Γ)
s'il existe une exéution deA
om-mençant ens
pari ∈ I
. Nous noteronsS(A)
l'ensemble des piles deStacks
k(Γ)
aeptées par
A
. Par analogie nous noterons, pour toutq ∈ Q
(resp.δ ∈ ∆
), l'ensembleS
q(A)
(resp.S
δ(A)
) des piless ∈ Stacks
k(Γ)
telles qu'il existe une exéutiondeA
ommençant ens
par l'étatq
(resp.par latransitionδ
).Nousnoterons Altk l'ensembledes langagesde piles de niveau
k
aeptés par un automate alternant surΓ
k.Remarque 4.3.11. Remarquons les faitssuivants:
1. La taille
|A|
d'un automate alternantA
surΓ
k est borné par|Γ
k|2
2|QA||Γk|(i.e..
exp[1](|Q
A|)
).2. Comme pour les automates sur
Γ
k, nous ajoutons desε
-transitions en ra-joutant une instrutionε
àΓ
ok interprétée omme
Id
k. L'élimination desε
-transitions se fait par un méanisme lassique de saturation qui n'aug-mentepas le nombre d'états mais qui peut produire un automate de taille exponentielle en|Q
A|
.Exemple 4.3.12. Pour tout entier
n ≥ 1
, onsidérons le langage rationnelL
nsur l'alphabet
Γ ={0,1,$}
déni par:L
n={x$y$z$y|y ∈ {0,1}
netx,z ∈Γ
∗}
Considérons l'ensemble
S
n des pilesde niveau 2ontenant uneunique pilede niveau1
appartenant àL
n (i.e.S
n= {[ [w] ]
2| w ∈ L
n}
). Nous dénissons un automateA
n alternant surΓ
2 qui aepteS
n.Pour tout
n ≥ 1
, l'automateA
n alternant surΓ
2 est déni par le uplet(Q
n,{q
0},∆
n)
où:etoù l'ensembledes transitions
∆
n est déni par:q
0→(t
1,x¯)∧(q
↓,1)
t
i→(t
i+1,x¯) t
n→(v,¯$) v →(v,y¯)
q
↓→(q
↓,y¯) q
↓→(p
1,¯$) p
i→(p
i+1,x¯)∧(r
ix,y)
p
n+1→(f,¯$) r
x i→(r
x i,y) r
x i→(s
x i,¯1)
s
1→(f,x¯) s
xi+1→(s
xi,y¯)
v,{⊥
2} → ∅ f → ∅
oùx∈ {a,b}
,y ∈Γ
eti∈[1,n]
.Intuitivement, l'automate lane deux exéutions. La première, utilisant les états
t
i etv
,vérieque lapileest de laforme{[ [w$y] ]
2|w∈Γ
∗ ety∈ {a,b}
∗}
. Laseondevérieque$y$
estbien unfateurdew$
.Pour eetueretteseonde vériation, l'automate opie lapileet dépile(de manière non-déterministe)une suite de symboles se terminant par$
. Ensuite, l'automate dépile un symbolex∈ {a,b}
etlaneuneexéutionave l'étatr
x1 quivériequelepremieraratère en partant du haut de pile est unx
. Le proessus est itéré au totaln
fois: le dépilement dui
èmesymbole
x
i lane en parallèleune exéutiondans l'étatr
x i qui vériequelei
ème(enpartantduhautdelapile)est
x
i.Cetteexéutionsetermine en vériantque len+ 1
èmesymboleest un
$
.Lagure 4.2montre une exéution deA
2 aeptant[ [a$ab$ab] ]
2.Le langage
L
n est évidement rationnel et tout automate ni déterministe l'aeptant possède au moins2
2nétats et don, tout automate ni l'aeptant a au moins
2
nétats. Remarquons que l'automate
A
n a lui4n + 5
états. Nous reviendrons sur ette remarque dans leparagraphe 4.8.Unepremièrepropriétédees automatesestqu'ilsaeptenttousleslangages de Ratk.
Plus préisément, en utilisant lelemme 4.1.2, nous pouvons établir l'équivalene entre les automates sur
Γ
k et les automates alternants dit élagués dont l'arbre d'exéution est réduit à une branhe etqui don n'utilisentpas l'alternane. Dénition 4.3.13. Un automateA = (Q
A,I
A,∆
A)
est élagué si pour toutδ ∈
∆
A,|Act(δ)| ≤1
.La taille d'un automate alternant sur
Γ
k est au plus|Q|
2|Γ
k|
2où
Q
est l'en-semble des états de l'automate. Intuitivement, pour passer d'un automate surΓ
k à un automate alternant élagué surΓ
k, ilsut de renverser les transitions de l'automate et d'éhanger les états initiaux et naux. Pour la transformation réiproque, il faut en plus ajouter un nouvel état ar l'exéution d'un automate alternantet élaguésurΓ
k ne setermine pas néessairement sur lapile vide[ ]
k.(q0,[ [a$ab$ab] ]2) (q0,[ [a$ab$ab] ]2) t1,[ [a$ab$a] ]2 t2,[ [a$ab$ ] ]2 v,[ [a$ab] ]2 v,[ [ ] ]2 ¯ a ¯ $ ¯ ¯ b (q0,[ [a$ab$ab] ]2) q↓,[ [. . .] [a$ab$ab] ]2 p1,[ [. . .] [a$ab] ]2 p2,[ [. . .] [a$a] ]2 rb 1,[ [. . .] [a$ab$ ] ]2 ra 2,[ [. . .] [a$ab] ]2 p3,[ [. . .] [a$ ] ]2 sb 1,[ [a$ab$ab] ]2 sa 2,[ [a$ab$ab] ]2 f,[ [. . .] [a] ]2 f,[ [a$ab$a] ]2 sa 1,[ [a$ab$a] ]2 f,[ [a$ab$ ] ]2 1 ¯b $ b ¯ b ¯ a ¯ a ¯ $ ¯b
Fig. 4.2 Une exéution de
A
2 aeptant la pile[ [a$ab$ab] ]
2.Proposition 4.3.14. Les automates alternants élagués sur
Γ
k et les automates surΓ
k sont équivalents:1. Pourtout automate
A
surΓ
k, ilexiste un automateB
alternant élagué surΓ
k tel queS(B) =S(A)
et|Q
B|=|Q
A|
.2. Pourtout automate
A
alternant élagué surΓ
k, ilexiste un automateB
surΓ
k tel queS(B) =S(A)
et|Q
B|=|Q
A|+ 1
.Démonstration. Nous établissons lesdeux propriétés.
1. Soit
A = (Q
A,I
A,F
A,∆
A)
un automate surΓ
k. Nous onstruisons un auto-mateB = (Q
A,F
A,∆
B)
alternantélaguésurΓ
kaeptantS(A)
.L'ensemble des transitions∆
B est déni par:∆
B= {q,T →(p,γ¯)|p−→
γq,T ∈∆
A}
∪ {i,⊥
k→ ∅ |i∈I
A}.
Par lelemme 4.1.2 etpar onstrution,
S(A) =S(B)
.2. Soit
A= (Q
A,I
A,∆
A)
un automate alternantélagué surΓ
k. Nous onstrui-sons un automateB = (Q
B,I
B,F
B,∆
B)
aeptantS(A)
. L'ensemble des étatsQ
B= Q
A∪ { • }
où•
est un symbole n'appartenant pas àQ
A. Les états initiaux sontI
B= {q ∈ Q
A| q → ∅ ∈ ∆
A} ∪ { • }
. Les états nauxF
B sontles états initiauxI
A deA
. Enn, l'ensembledes transitions de∆
Best déni par:
∆
B= {q−→
γ¯p,T |p,T →q,γ ∈∆
A}
∪ {•−→ • |
γγ ∈Γ
ok
}
∪ {•−→
γp,T |γ ∈Γ
ok et
p,T → ∅ ∈∆
A}
Par onstrutionet par lelemme 4.1.2,
S(A) =S(B)
.Exemple 4.3.15. Reprenons l'automate
A
surΓ
2 présentédansl'exemple4.3.2. L'automateB = (Q
B,I
B,∆
B)
alternant élagué surΓ
2 onstruit dans la proposi-tion 4.3.14est donnéi-dessous. L'ensembledes étatsQ
B={i,p,q,f }
,I ={f}
, etl'ensemble des transitions∆
B est:i,{ ⊥
2} → ∅ i→(i,a¯) p→(i,¯1)
q →(p,a) p→(q,¯1) f,{ ⊥
1} →(p,a).
Ainsila pile
[ [aa] [a] [ ] ]
2 est aeptée par l'exéution:(f,[ [aa] [a] [ ] ]
2)−→
a(p,[ [aa] [a] [a] ]
2)−→
¯1(q,[ [aa] [a] ]
2)
a−→(p,[ [aa] [aa] ]
2)−→
¯1(i,[ [aa] ]
2)−→
¯a(i,[ [a] ]
2)−→
¯a(i,[ ]
2).
Une onséquene direte de la proposition préédente est que les ensembles de Ratk sont aeptés par les automates alternantssur
Γ
k.Une autre propriété de base des automates alternants est que les langages qu'ilsaeptent sont los par union etintersetion.
Proposition4.3.16. Pourtout automates
A
etB
alternantsurΓ
k,les langagesS(A)∩ S(B)
etS(A)∪ S(B)
sont aeptés par des automatesalternants surΓ
kDémonstration. Soit
A = (Q
A,I
A,∆
A)
etB = (Q
B,I
B,∆
B)
deux automates al-ternants surΓ
k. Nous pouvons sans perte de généralité supposer queQ
A etQ
Bsont disjoints. L'automate
C = (Q
A∪ Q
B,I
A∪ I
B,∆
A∪∆
B)
aepte le lan-gageS(A)∪ S(B)
. Soit•
un symbolen'appartenant pas àQ
A∪Q
B.L'automateD= (Q
A∪Q
B∪ {ε},{ • },∆
D)
d'ensemblede transitions∆
D= ∆
A∪∆
B∪ {• →(i
A,ε)∧(i
B,ε)|i
A∈I
Aeti
b∈I
B}.
aepte le langage
S(A)∩ S(B)
.Remarque 4.3.17. Nous n'obtenons pas la fermeture par omplémentaire ar nous n'autorisons que l'aeptation par exéution nie. Il est possible de dénir une notiond'automatealternant plus généralequi autorisel'aeptationpar une exéutioninnieetquiimpliquelafermetureparomplémentaire.Toutefois,ette
Nousallonsmaintenantprésenter une propriétédes exéutions desautomates alternants.Lapropositioni-dessousmontrequenous pouvons toujourssupposer quel'exéution de l'automateest tellequesiàdeux pointsde son exéution l'au-tomatearrivedans unemêmeonguration, alorsilappliquelamêmetransition. Une telle exéutionest dite positionnelle.
Dénition 4.3.18. Une exéution
E = (T,C)
d'un automatealternantA
surΓ
kest positionnelle sipour tout
u
etv ∈V
T,C(u) =C(v)
impliqueΦ
E(u) = Φ
E(v)
. Par exemple, l'exéution présentée dans la gure 4.2 est une exéution posi-tionnelleartouslesnoeudsdeT
sontétiquetéspardesongurationsdiérentes. Nous allons établir que l'on peut se restreindre aux exéutions positionnelles d'un automate alternant surΓ
k.Proposition4.3.19. Pourtoutautomate
A
alternant surΓ
k, toutepileaeptée parA
est aeptée par une exéution positionnelledeA
.Démonstration. Soient
A= (Q,I,∆)
un automate alternant surΓ
k ets
une pile deStacks
k(Γ)
aeptéeparA
.ÀhaqueexéutionE = (T,C)
deA
,nousassoions l'ensembleXE
de ongurations déni par:XE ={c∈Q×Stacks
k(Γ)| ∃u6=v ∈V
T,C(u) = C(v) =c
etΦ
E(u)6= Φ
E(v)}.
Par dénition, une exéution est positionnelle si etseulement si
XE =∅
.Commençonsparétablirquepourtouteexéution
E
aeptants∈Stacks
k(Γ)
ave
XE 6=∅
, ilexiste une exéutionE
′aeptant
s
telle que|XE
′|<|XE|
. SoitE = (T,C)
uneexéutiondeA
aeptants
tellequeXE 6=∅
.CommeT
est ni, il existec
0∈X
E etu
0∈V
T tels queC(u
0) =c
0 et l'imageparC
des autres sommets deT
/u0 ne ontient pas d'éléments dansXE
(i.e.C(V
T/u0
)∩XE = ∅
).Soit
V
0 l'ensemble des n÷uds deT
qui sont étiquetés parc
0 et tels qu'auun de leurs anêtres ne soitétiqueté parc
0:V
0={u∈V
T|C(u) =c
0 et∀v 6=u∈V
T,v −→
T
∗
u⇒C(v)6=c
0}.
L'exéution
E
′est onstruite à partir de
E
en substituant, dansE
′, le sous-arbre
T
/u0 à tous les sous-arbres enrainés enV
0. Comme par dénition deV
0, lessous-arbres enrainésenV
0 sonttous disjoints,lasubstitutionest bien dénie et l'on vérie failement queE
′est une exéution aeptant
s
. Par onstrution,X
E′⊆XE
etpar dénition deT
/u0,c
06∈X
E′. Don|X
E′|<|XE|
.Soit
E
0 une exéution deA
aeptants
ave|XE
0|
minimale.Il suit de e qui prééde queX
E0=∅
etdon queE
0 est positionnelle.nouspouvons dénirlasémantiqued'un automate alternant
A
surΓ
k par unjeu de paritéG
A= (V
0,V
1,E =E
0∪E
1,Ω)
àdeux joueurs.V
0= Q×Stacks
k(Γ)
V
1= {(δ,s)|δ =q,T →(q
1,γ
1)∧. . .∧(q
n,γ
n)
et∀j ∈[1,n],s
j=R(γ
j)(s)
est déni}
E
0= {((q,s),(δ,s)) |(q,s)∈V
0,(δ,s)∈V
1 etHead(δ) =q}
E
1= {((δ,s),(q,s
′))|(δ,s)∈V
1,(q,γ)∈Act(δ)
ets
′=R(s)
et∀j ∈[1,n],s
j=R(γ
j)(s)
est déni}
Lafontion