• Aucun résultat trouvé

De nouveaux modèles d'automates d'arbres

Dans le document Automates d'arbres à jetons (Page 147-150)

7.3 Borne supérieure

7.3.1 De nouveaux modèles d'automates d'arbres

Nous présentons dans ette partie des nouveaux modèles d'automates que nous dénissons pour simuler un automate d'arbres à jetons. Pour transformer un auto- mated'arbresàjetonsenautomatebottom-up,nousutilisonseneetdesautomates intermédiaires qui al ulent des informations, par exemple un ensemble de ouples d'états orrespondantaux exé utions de l'automate d'arbres à jetons onsidéré.

Si nous pouvons onstruire, étant donné un automate d'arbres faible à

(k − 1)

jetons,unautomated'arbresbottom-upqui al uletoutessesbou les,nousobtenons àpartird'unautomatefaibleà

k

jetonsun nouveaumodèled'automated'arbresqui ombine le omportement d'un automate à jetons du modèle faible et elui d'un automated'arbres bottom-up. Informellementun automate d'arbres faiblebottom- upà

k

jetons est un automated'arbres à

k

jetonsdu modèlefaiblequipeut simuler un automate bottom-up quand il pla e son dernier jetonsur le n÷ud ourant. Dénition 7.8 Un automate d'arbres faible bottom-up à

k

jetons est un ouple

(A, B)

tels que



B

estun automate d'arbresbottom-upsurun alphabetde laforme

Σ×2

{1,··· ,k}

, 

A

est un

wPTAk

sauf que les transitions qui lèvent et posent le jeton

1

sont

de la forme

(QA× Σ × TYPE × {1} × 2

[k]× Q

B) × QA

QA

et

QB

sont les ensemblesd'états respe tifs de

A

et

B

.

La taille de

(A, B)

est la somme des tailles de

A

et de

B

'est à dire la somme de leursnombres d'états.

Unautomated'arbres faiblebottom-upà

k

jetons se omporte ommeunautomate d'arbresfaibleà

k

jetonsjusqu'à equ'il hoisissede poserlejeton

1

surun n÷ud

u

.

L'automate

(A, B)

pose alors le jeton

1

en

u

, simule l'automate bottom-up

B

sur l'arbre marqué par le jeton

1

puis lève le jeton

1

et reprend son omportement heminant à partir du n÷ud

u

et d'un état qui dépend de l'état atteint par

B

à la ra inede l'arbremarqué lorsde sasimulation.

Plus formellement, pour

i ∈ [1, k]

, une

i

- onguration de

(A, B)

sur un arbre

t

est un triplet

(q, u, f )

q

est un état de

A

,

u

est un n÷ud de l'arbre

t

et

f

est une ae tation des jetons de

{i + 1, · · · , k}

. Soient maintenant

c = (q, u, f )

et

c

= (q, u, f)

deux ongurations de

(A, B)

u

un n÷ud de

t

de type

θ

et d'étiquette

a

. La onguration

c

est un su esseurde la onguration

c

, e quel'on note

c

(A,B),t

−−−−→ c′

, dans lesdeux as suivants: 1.

c

A,t

−→ c′

et l'automatene pose pas lejeton

1

durant ette étape, 2.

u

= u

,

f

= f

et

((q, a, θ, 2, f

−1(u), q

b), q′)

est une transition de

A

qb

est l'étatatteintpar

B

àla ra inesur l'arbremarqué

(t, f ∪ {(1, u)})

.

Dans le premier as,

(A, B)

se omporte ainsi omme un automate d'arbres à

k

jetons du modèle faible en ee tuant la transition de

c

à

c

. Dans le se ond as,

(A, B)

pose le jeton

1

, ee tue une évaluation de

B

sur l'arbre marqué par les

k

jetons,puisretournesurlen÷udmarquéparlejeton

1

etlève e jeton.Remarquons que,pour une ongurationd'une exé utionde

(A, B)

,lejeton

1

n'est jamaisposé. Nousnotons

(A,B),t ∗

−−−−−→

la loturetransitivede larelation

(A,B),t

−−−−→

etnous remarquons queles dénitions de

k

bou les d'arbreet de ontexte s'étendent sans di ultés au modèle des automates d'arbres faiblesbottom-up àjetons.

Pour traiter le modèle fort par indu tion, nous dénissons une version forte du modèle des automates faiblesbottom-up à k jetons. Nous introduisons d'abord un nouveau type d'automate bottom-up pouvant séle tionner un n÷ud ave un état spé ial au ours d'un al ul.

Dénition 7.9 Unautomatebottom-upséle tionneurestunquintuplet

(Q, q0, Qf, Q

, δ)

Q

⊆ Q

et

(Q, q0, Qf, δ)

est un automate d'arbres bottom-upvériantlapropriété suivante : étant donné un arbre

t

, pour haque al ul

ρ

a eptant sur

t

, il existe un unique n÷ud

u

dans l'arbre

t

ave

ρ(u) ∈ Q

. On dit alors que le n÷ud

u

est séle tionné par

B

dans le al ul

ρ

.

Cesautomatespermettentdeséle tionnerdansun arbre

t

unn÷ud

uℓ

etde al uler les ouples d'états orrespondant à des exé utions d'un automate fort à

k

jetons à partir de la onguration où le jeton

k

vient d'être posé jusqu'à elle où le jeton

k

est sur le point d'êtrelevé àpartir du n÷ud

uℓ

.

Nous pouvons maintenant dénir un nouveau modèle d'automates d'arbres qui ombinele omportementd'unautomateàjetons dumodèlefortet eluid'unauto- matebottom-up séle tionneur. Intuitivement,un automate d'arbres fortbottom-up séle tionneur à

k

jetons se omporte omme un automate d'arbres fort à

k

jetons jusqu'à e qu'il hoisisse de poser le jeton

1

. L'automate d'arbres fort bottom-up séle tionneurà

k

jetonssimulealors l'automatebottom-up séle tionneuretreprend son omportement heminant àpartir du n÷udséle tionné par l'automatebottom- up séle tionneur.

Dénition 7.10 Un automate d'arbres fort bottom-up séle tionneur à

k

jetons est un ouple

(A, B)

telsque



B

estunautomatebottom-upséle tionneursurunalphabetdelaforme

Σ × 2

{1,··· ,k}



A

estun

PTAk

saufquelestransitionsquilèvent etposentlejeton

1

sontrem- pla éespardestransitionsdelaforme

(QA× Σ × TYPE × {1} × 2

[k]× Q

B) × QA

QA

et

QB

sont les ensembles d'états respe tifs de

A

et

B

.

Formellement, pour

i ∈ [1, k]

, une

i

- onguration de

(A, B)

sur un arbre

t

est un triplet

(q, u, f )

q

est un état de

A

,

u

un n÷ud de

t

et

f

une ae tation des jetons de

{i + 1, · · · , k}

. Soit

u

un n÷ud de

t

de type

θ

et d'étiquette

a

et soient

c = (q, u, f )

et

c

= (q, u, f)

deux ongurations de

(A, B)

.La onguration

c

est un su esseur de la onguration

c

e que l'on note

c

(A,B),t

−−−−→ c′

dans les deux as suivants:



c

A

−→ c′

et

A

ne pose pas lejeton

1

en ee tuant latransitionde

c

à

c

. 

f

= f

,

x

est le n÷ud séle tionné par

B

sur l'arbre marqué

(t, f ∪ {(1, x)})

et

((q, a, θ, 2, f

−1(x), q

b), q′)

est unetransitionde

(A, B)

qb

est l'étatatteint par

B

àla ra ine sur l'arbremarqué

(t, f ∪ {(1, x)})

.

Dans le premier as,

(A, B)

se omporte ainsi omme un automate d'arbres à

k

jetonsdumodèleforten ee tuantlatransitionde

c

à

c

.Danslese ond as,

(A, B)

poselejeton

1

,ee tueuneévaluationde

B

surl'arbremarquéparles

k

jetons,puis retourne sur le n÷ud séle tionné par

B

et lève le jeton

1

à distan e. Remarquons que,pour une ongurationd'une exé utionde

(A, B)

,lejeton

1

n'est jamaisposé.

On note

(A,B),t ∗

−−−−−→

la lturetransitivede larelation

(A,B),t

−−−−→

.

Pour étendre la onstru tionde [14℄ aux automates à jetons du modèle fort par indu tion sur le nombre de jetons, nous allons simuler ave un automate d'arbre bottom-up séle tionneur les exé utions d'un automate d'arbres à

k

jetons à partir du moment où il pose le jeton

k

jusqu'à e qu'il le lève. L'automate bottom-up séle tionneurquenous onstruisons ee tueson al ulsur un arbre marquépar des jetons onsidéré omme un arbre sur un alphabet de la forme

Σ × 2

[1,k]

et il doit simulerles exé utions de l'automated'arbres àjetons à partird'un n÷ud distingué parle jeton

k

jusqu'au n÷udqu'ilséle tionne. Nousdénissons i-dessous e qu'est un n÷ud distingué.

Dénition 7.11 Soit

(t, f )

un arbre

J

-marqué où

J

est un ensemble de jetons et soit

u

un n÷ud de et arbre.Le n÷ud

u

est un n÷ud distingué si

u

est lara inede

t

ou si un jeton

i ∈ J

est posé sur

u

, 'est-à-dire si

f

−1(u) 6= ∅

. L'arbre

(t, f )

est alors marqué en

u

. On appelle ensemble de distin tions de l'arbre

(t, f )

l'ensemble

J ∪{ra}

. Si

µ

estune distin tiondel'arbremarqué

(t, f )

,onditque

(t, f )

estmarqué par

µ

. Dans le premier as,

u

est le

ra

-n÷ud de

t

ou de

(t, f )

et dans lese ond as,

u

est le

i

-n÷ud de

(t, f )

.

Remarque 7.2 On avudansladénition 3.6qu'un arbre

J

-marquésur unalpha- bet

Σ

pouvaitêtre onsidéré ommeunarbresurl'alphabet

Σ×2

J

telquel'étiquette d'unn÷udindiquel'ensembledes jetonsquisetrouventsur e n÷ud.Unn÷uddis- tingué est alors la ra ine ou un n÷ud dont l'étiquette sur

Σ × 2

J

est de la forme

(a, J′)

ave

J

6= ∅

.

quenous onstruisonsparlasuitedoitsimulerl'automated'arbresàjetons onsidéré. Dénition 7.12 Soient

(A, B)

un automate d'arbres fort bottom-up séle tionneur à

k

jetons, respe tivement un automate d'arbres faible bottom-up à

k

jetons,

C

un automate d'arbres bottom-upséle tionneur et

µ

l'élément

ra

ou bien un entierstri - tementsupérieurouégalà

k

.L'automate

C

simule

(A, B)

demanièreexa teàpartir de

µ

sur les arbres marqués par

µ

s'ilvérie les deux onditions suivantes :

1. lesensembles de ouples d'états de

A

sont les états a eptantsde

C

2. pour tout arbre marqué

(t, f )

, si le n÷ud

u

est le n÷ud

µ

-marquéde

(t, f )

on a l'équivalen e suivante :

C

séle tionne un n÷ud

v

et atteint un état a eptant

qf

à la ra ine si et seulement si

qf

= {(q, q

) | (q, u)−−−−−→ (q(A,B),t ∗

, v), q

est a eptant

}

.

Remarque 7.3 Dans ettedénition,l'automate

C

al uledes ouplesd'états or- respondantàdesexé utions de

(A, B)

seterminantdans unétata eptantmaispas né essairement àlara ine.Ons'intéressera en eetauxexé utionsentre ledépotet la levée d'un jeton et on parlera don d'exé utions terminales et non d'exé utions a eptantes. Ainsi l'état atteint par

C

à la ra ine ontient exa tement les ouples onstitués des premierset des derniers états de tous les exé utions terminales de

C

entre lesn÷uds

u

et

v

.

7.3.2 Simuler de manière exa te un automate fort à jetons

Dans le document Automates d'arbres à jetons (Page 147-150)