• Aucun résultat trouvé

Synchronisation de grammaires de graphe

N/A
N/A
Protected

Academic year: 2021

Partager "Synchronisation de grammaires de graphe"

Copied!
147
0
0

Texte intégral

(1)

HAL Id: tel-00462032

https://tel.archives-ouvertes.fr/tel-00462032

Submitted on 8 Mar 2010

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Stéphane Hassen

To cite this version:

Stéphane Hassen. Synchronisation de grammaires de graphe. Informatique [cs]. Université de la

Réunion, 2009. Français. �tel-00462032�

(2)

Thèseen vuede l'obtention du titre de

do teur de l'université de la Réunion

en informatique Syn hronisation de grammaires de graphes Stéphane Hassen Composition du jury :

OlivierCarton (rapporteur)

DidierCau al (dire teur)

Jean Diatta ( o-dire teur)

Damian Niwinski (rapporteur)

(3)
(4)

Mes remer iements vont tout d'abord àmessieurs Cartonet Niwinsky,pour

leurtempsetl'impli ationdontilsontfaitpreuvepourlesrapports sur ette

thèse. Je ne pense pas pouvoir retrans rire i i la gratitude que j'éprouve

pour Didier Cau al pour avoir a epté la responsabilité de dire teur ainsi

que pour m'avoirsoutenu durant toutes es années. Mer i égalementà Jean

Diattapourm'avoirpermisde retrouverlalégalitévis-à-visdel'universitéen

a eptantde devenir o-dire teurde ettethèse. Mer iégalementàTheodor

Knapik pour avoir ommençé à m'en adrer et surtout m'avoir donné envie

d'ee tuer ette thèse.

Mes pensées vontégalement auxmembres des laboratoiresdont j'ai arpenté

les ouloirs, à savoir l'IREMIA, l'IRISA de Rennes et l'IGM de

Marne-La-Vallée.Bienevidemmentjene pourraispas itertouslesnomsmais pendant

que j'é ris es lignes, vos visages me reviennent et 'est vers vous que se

dirigentmesremer iementspour l'a euilque j'aireçu, lesdis ussions

s ien-tiques aussi bien que philosophiques auxquelles j'ai pu parti iper...

Last but not least, mer i à ma famille, elle du sang et elle du oeur, qui

même si elle n'a jamais vraiment ompris mon travail n'a jamais douté de

(5)
(6)

1 Introdu tion 7 2 Préliminaires 13 2.1 Notations . . . 13 2.2 Mots . . . 14 2.3 Relationsbinaires . . . 15 2.4 Graphes . . . 15

3 Des automates nis 20 3.1 Grammaires de mots . . . 20

3.1.1 Dénition . . . 21

3.1.2 La hiérar hiede Chomsky . . . 22

3.2 Automatesnis . . . 25

3.2.1 Les grammaireslinéaires gau hes . . . 25

3.2.2 Les automates nis . . . 26

3.2.3 Propriétés de fermeture. . . 28

4 Aux automates réguliers 33 4.1 Automatesà piles . . . 33

4.1.1 Les grammairesalgébriques . . . 33

4.1.2 Les automates àpiles . . . 34

4.2 Automatesréguliers. . . 44

4.2.1 Les grammairesdéterministes de graphes . . . 44

(7)

5 Syn hronisation de grammaires 62

5.1 Contexte . . . 63

5.2 Les grammairespondérées . . . 66

5.3 La syn hronisation . . . 69

5.4 Les langagessyn hronisés . . . 90

6 Une extension 110 6.1 Les langagesnon-ambigus . . . 110

6.2 Les grammairesnon-ambiguës . . . 111

6.3 Syn hronisation . . . 113

(8)

Introdu tion

L'étude des automates ommen e ave l'arti le d'Alan Turing [Tu36℄ et

sades riptiond'unmodèlede al ul:lesma hines(ouautomates)deTuring.

Ces ma hines théoriques sont onstituées d'une bande innie, d'une tête de

le ture/é riture (ayant un nombre ni d'états possibles) pouvant par ourir

la bande et d'un programme di tant à la ma hine son fon tionnement : les

a tions de la tête dépendent de son état et de la lettre lue sur la bande.

Ces modèles permettent de dénir des langages : un mot est a epté par

un automate si l'appli ation de son programme sur une bande ontenant

(uniquement) e mot amène la tête de le ture dans un état nal prédéni.

L'ensembledesmotsa eptésparunema hineformeainsilelangagea epté

par la ma hine. En restreignant e modèle de sorte que l'é riture ne se soit

pas possibleet quela tête ne sedépla e quedans un sens, on obtientle

mo-dèle théorique des automates nis. Les langages a eptés par es ma hines

restreintes sontexa tementles langages los par union,interse tion et

itéra-tion : e sontles langagesréguliers.

En1956,StephenKleenemontrequelesautomatesnisre onnaissent

exa te-mentleslangagesréguliers[Kl56℄.Cerésultat,appelélethéorèmede Kleene,

est obtenu en onsidérant d'une part la des ription d'une ma hine par ses

omposantslo aux,unréseaunideneuronesdeM Cullo hetPitts[MP43℄,

mais aussi en dénissantune ma hine par un nombre ni d'états globaux.

(9)

[RS59℄reformulentlethéorèmedeKleeneentermesalgébriques.Leslangages

a eptés par lesautomates nisformentunealgèbrede Boolequiest de plus

lose par on aténation et itération de la on aténation. Il en résulte que

l'in lusiondes langagesréguliersest dé idable.Le le teurpourra sereporter

à lasynthèse de Dominique Perrin sur l'histoiredes automates nis [Pe95℄.

Dans edo ument,nousreprésentonslesautomatespardesrelationsbinaires,

dé rivant lestransitions du programme de lama hine, entre un nombre ni

d'éléments. Cette similarité entre automates et stru tures algébriques a été

mise en exergue par Mar el-PaulS hützenberger [S 55℄.Une représentation

naturellede esstru turessefaitpargraphesnis:lessommetssontlesétats

de l'automate et les ar s étiquetés expriment les relations de transition. Le

langage a epté par un automate est alors donné par lestra es du graphele

représentant : leslangagesréguliers sont les tra es des graphesnis.

En terme de omplexité, on peut lasser les langages selon la hiérar hie de

Chomsky [Ch56℄. Dans sa re her he d'une grammaire de mots pour

expri-mer la ri hesse de la langue anglaise, Noam Chomsky dégage la notion de

grammaire algébrique. Les grammaires algébriques engendrent les langages

dits algébriquesin luant leslangagesréguliers.

Tout ommelesautomates nis re onnaissentleslangagesrégulier,les

auto-mates leplus souventasso iés auxlangagesalgébriquessont lesautomatesà

pile. Ces ma hines sont une restri tion des ma hines de Turing : la tête ne

peutquelireetest uni-dire tionnelle.En1985,DavidMülleretPaulS hupp

[MS85 ℄ ont étudié la stru ture des graphes de fon tionnement de es

auto-mates : les sommets sont les ongurations de la ma hine et ils sont reliés

par des ar s dé rivantses a tions.Ilsmontrentque es graphesde transition

oïn ident ave la lasse des graphes de degré ni qui sont niment

dé om-posables par distan e. Ils donnent ainsi une des ription de la stru ture des

graphes de transitiondes automates àpile.

On a alors her hé à onstruire es graphes par l'utilisationde grammaires,

non plus de mots mais de graphes asso iant à un ar , dit non-terminal, un

unique graphe ni ([Co89℄). Par ré ritures itérées à partir d'un graphe ni,

on engendre un graphedit régulier.Ces graphes sont une généralisation des

(10)

graphes de transitiondes automates àpile.

Néanmoins, les tra es des graphes réguliers sont exa tement les langages

algébriques. La représentation externe des graphes réguliers par es

gram-maires fournit alors un nouvel outil pour l'étude des langages algébriques.

Nos le teurs pourront trouver dans [Ca07℄ une synthèse sur es grammaires

de graphes.

Contrairement aux langages réguliers, les langages algébriques ne forment

pas une algèbre de Boole, notamment l'interse tion de deux langages

algé-briques n'est pas né essairement un langage algébrique.De plus, par

rédu -tion du problème de orrespondan e de Post, on déduit que l'in lusion des

langagesalgébriquesn'estpasdé idable.Ce irestevalablepourdenombreux

sous-ensemblesstri ts de es langages. Citonsnotammentleslangages

déter-ministes  nite-turn  [Va74℄, lesalgébriques déterministes à un ompteur

[VP75℄ oules langages simples [Fr76℄. Indiquons que 'est pour les langages

simples qu'aété donné un premieralgorithmed'équivalen edes langages

al-gébriques déterministes[KH66℄.

Néanmoins on peut dénir des sous-ensembles de langages algébriques

dé-terministes partageant lespropriétés de lturedes langagesréguliers. Dans

[AM04℄, Rajeev Alur et Parthasarathy Madhusudan ont déni une

restri -tion des automates àpile, appelés visible, quisont une simple extension des

automates input-driven [Mel80℄ : le fon tionnement de l'automate ne

dé-pendquedes ara tères d'entréede labande de le ture.Outrelefaitqueles

langages (algébriques) visibles, a eptés par es automates, soient

détermi-nistes, ilsforment une algèbre de Boole lose par on aténation et étoile de

Kleeneétendantainsilespropriétésde lturede basedeslangagesréguliers.

D'autres travaux ont alors étendu es résultats dénissant des ensembles

plus larges(par in lusion)delangagesalgébriquesayant espropriétés.Dans

[Ca06℄, Cau al dénit par transdu teur ni une relation,dite de

syn hroni-sation, entre les graphes réguliers engendrés par des grammaires de graphes

syn hronisées. Il montre alors que pour un transdu teur donné, l'ensemble

des tra esdes graphes régulierssyn hronisés forme une algèbrede Boole.

Citons également dans e domaine les travaux sur les automates à hauteur

(11)

pile est à hauteur de pile déterministe si après haque le ture d'un mot la

hauteur de la pile est la même. Partant des travaux de Cau al, Nowotka et

Srba dénissentune relationde syn hronisationentre automatesàpilebasée

sur la hauteur de pile : deux automates sont syn hronisés si pour tout mot

lu,les hauteurs de pilepossibles sontidentiques. Cette relationest une

rela-tion d'équivalen esur lesautomates àpile.Ilsmontrentalorsque l'ensemble

des langagesalgébriques a eptés par lesautomates à hauteur de pile

déter-ministe d'une même lasse d'équivalen e est los par union et interse tion.

De plus, pour les as où es automatessonttemps-réels etdéterministes, et

ensemblede langages est los par omplémentaire.

Le travail présenté i i vise à étendre es résultats. Nous avons her hé un

nouveau moyen de dénirdes sous-ensembles de langages algébriques

onte-nant leslangagesréguliersetformantdes algèbresde Boole. Pour ela, nous

dénissons une relation de syn hronisation entre grammaires de graphes. A

partir d'une grammaire, on dénit un poids sur les sommets du graphe

en-gendré, e quel'on pourraitassimileràlahauteur de pile hez[NS07℄. Ainsi,

une grammaire de référen e syn hronise une autre grammaire si tout mot

étiquetant un hemin initial dans le graphe engendré par ette autre

gram-maire étiquette également un hemin initial dans le graphe référent (i.e. le

grapheengendréparlagrammaireréférente)etque es heminsterminenten

des sommets de même poids. Dans ette étude, nous onsidérons une lasse

de grammaires parti ulières:lesgrammaires pondérées. Cesgrammaires

en-gendrent des graphes possiblement non-déterministes mais vérient la

pro-priété suivante : si il existe deux hemins de même étiquette partant d'un

mêmesommetalorslesbutsde es heminsontlemêmepoids.Nousétudions

alors les ensembles de langagesalgébriques omposés de eux engendrés par

les grammaires syn hronisés par une grammaire de référen e donnée. Nous

montrons que et ensemble de langages syn hronisés ontient les langages

réguliers(in lusdans lelangagede référen e) etformeune algèbrede Boole.

Les onstru tionsmisesen÷uvredansl'obtentionde erésultatutilisentune

généralisation du produit de syn hronisation quiest une opération lassique

sur les graphes nis. De plus, nous montrons que les graphesengendrés par

(12)

syn hronisés forment une sous- lasse des langagesalgébriquesdéterministes.

Nous montrons que dans le as général l'ensembledes langagessyn hronisés

par une grammaire n'est pas los par on aténation. Néanmoins, nous

don-nons une ondition susante sur la grammaire syn hronisante pour que et

ensemblesoit los non seulement par on aténation mais aussi par étoile de

Kleene.

LesalgèbresdeBooledéniesparsyn hronisationsontdessous-ensembles de

langagesalgébriquesdéterministes.Onpeutgénéraliser esrésultatsen

onsi-dérantdes langagesplusgénéraux.Unlangagealgébriqueest non-ambigus'il

est engendrépar unegrammairealgébriqueadmettantuneunique dérivation

gau he pour tout mot a epté [HU79℄. En ramenant e prin ipe au niveau

des graphes, on dénit les grammaires de graphes non-ambiguës dont les

graphesengendrés a eptent eslangages. Parsyn hronisation sur es

gram-maires,onpeutdénirdesalgèbresdeBooledelangagesnon-ambigus[Ca08℄.

Plan

Chapitre 2 : Préliminaires

Dans e hapitre,nous dénissonslesnotationsde base etnousdé rivonsles

on epts de mots et de graphes. On trouvera notamment dans e hapitre

les dénitions de mots et de langages ou en ore la dénition des graphes

( oloriés,étiquetés,...)etde notionss'yrapportanttellesque les hemins,les

tra es, le degré,et .

Chapitre 3 : Des automates nis

Nous ommen erons i i par donner des objets nis permettant de dé rire

des objets innis. Le premier paradigme déni i iest lagrammaire de mots

qui permet d'engendrer des langages. Nousdé rirons diérentes grammaires

avant de situer e travail dans la hiérar hie de Chomsky. Nous nous

inté-resserons alors à une lasse parti ulière de langages : les langages réguliers.

Pour eux- i, nous donnons deux manièresnies de les onstruire (ou de les

a epter). Enpremier lieu,ondé rit lesgrammaires de mots engendrant es

(13)

au-tomates nis. Enn, nous dénissons les propriétés algébriquesdes langages

réguliers que nous souhaitons étendre ave letravail présenté dans e

do u-ment.

Chapitre 4 : Aux automates réguliers

Dans e hapitre,nousprésentons des systèmesnispermettantde travailler

ave les langages algébriques. En premier lieu, nous rappelons une forme

parti ulière de systèmes de ré riture de mots, à savoir les automates à pile

qui sont des ma hines munies d'une mémoireet permettant suivant un

pro-gramme donné de onstruire (ou re onnaître) les langages algébriques.

Uti-lisant la représentation stru turelle des transitions de es automates, on

in-troduit la notionde grammairesde graphesqui est une extension dire te de

elle des grammaires de mots : on ne ré rit plus des lettres mais des

rela-tions. C'est sur es grammaires que nous travaillons pour dénir la relation

de syn hronisation.

Chapitre 5 : Syn hronisation de grammaires

Dans e hapitre, basé sur [CH08 ℄, nous dénissons la syn hronisation de

grammaires de graphes. Nous ommençons par dénir les grammaires

pon-dérées surlesquelles portent notreétude.Puis nousdénissons larelationde

syn hronisation sur es grammaires.En utilisantdes généralisationsdu

pro-duit de syn hronisation de grammaires, nous montrons alors que les

gram-maires pondérées sont déterminisables. Nous pouvons alors onstruire des

algèbres de Boole de langages algébriquesdéterministes et nous donnons de

plus une onditionsusante surlesgrammaires pour que es algèbressoient

loses par on aténation etétoile de Kleene.

Chapitre 6 : Une extension

Dans ette dernière partie, basée sur [Ca08℄, nous étendons les résultats du

hapitre pré édent. En onsidérant des grammaires dites non-ambiguës, on

onstruit par syn hronisation des algèbresde Boolede langages algébriques

non-ambigus qui sont les langages algébriques tels que pour tout mot, il

(14)

Préliminaires

Dans e nousxons quelquesnotations debase notammentdes notations

ensemblistesutiliséesdanslerestedudo ument.Nousdé rivonsensuitedeux

stru turesélémentairesautourdesquellesse onstruisentnospropos:lesmots

et lesgraphes.

2.1 Notations

Pourtoutensemble

E

,onnote

2

E

= {P | P ⊆ E}

l'ensembledesparties

de

E

. Si

E

est ni, on note

|E|

son ardinal, et

ω

désigne le ardinal d'un ensembledénombrable.Pour tout ensemble

E

d'ensembles, l'unionest notée

S

E = {e | ∃P ∈ E, e ∈ P }

au lieude

S

P ∈E

P

. On utilisel'abréviation

[n] = {1, . . . , n}

pour désigner les

n

premiersentiers naturels non nuls.

Soit

u = (a

1

, . . . , a

n

)

un n-uplet, ondésigne par

π

i

(u)

sa

i

ème

omposante:

π

i

(u) = a

i

.

Soit un ensemble

E

de symboles munis d'une arité

ρ : E → IN

.On note

E

n

l'ensemble des symboles de

E

d'arité

n

:

E

n

:= {a ∈ E | ρ(a) = n}

. Les symboles de

E

0

sont appelés des onstantes.

(15)

2.2 Mots

Lapremièrestru turedebasequenousdé rivons,etquiestlaplussimple,

est elle du mot.

On dé rit un mot à l'aide d'un ensemble ni non vide

Σ

de symboles. Ces symboles sont appelés lettres et onstituent l'alphabet

Σ

. Soit

Σ

l'ensemble

des suites nies de lettres de

Σ

,i.e.

Σ

= {(a

1

, . . . , a

n

) | n ≥ 0 ∧ a

1

, . . . , a

n

∈ Σ}

.

On munit

Σ

d'une opération binaireinterne,la on aténation,notée . :

(a

1

, . . . , a

n

).(b

1

, . . . , b

m

) = (a

1

, . . . , a

n

, b

1

, . . . , b

m

)

.

Tout élément

u = (a

1

, . . . , a

n

)

de

Σ

est un mot de longueur

|u| = n

. On représente e mot par

a

1

. . . a

n

en identiant

(a)

par

a

et en omettant la on aténation.Lemotvide

()

,delongueur0,estdésignépar

ε

.Ainsi

, ., ε)

est lemonoïdelibre engendré par

Σ

.

Tout mot

u

admet une dé omposition de la forme

u = xyz

ave

x, y, z ∈ Σ

et onappelle

x

un préxe de

u

et

z

un suxe de

u

.

Pour tout mot

u ∈ Σ

etpour tout

1 ≤ i ≤ |u|

,

u(i)

désigne la

i

ème

lettre

de

u

:

u = u(1) . . . u(|u|)

. Pour toute lettre

a ∈ Σ

, on note

|u|

a

le nombre d'o urren es de

a

dans

u

:

|u|

a

= |{i ∈ [|u|] | u(i) = a}|

et l'ensemble

Occ(u)

des lettres d'un mot

u

est donné par :

Occ(u) = {a ∈ Σ | |u|

a

6= 0} = {u(1), . . . , u(|u|)}

.

On appelle un langage toutepartie de

Σ

.

Exemple 2.2.1. Considérantl'alphabetlatin, these est un mot de 5lettres

et

these(2) = h

. Lemot

t

(respe tivement

se

)est un préxe(respe tivement suxe) de

these

. De plus

Occ(these) = {t, h, e, s}

et

|these|

e

= 2

.

En terme de stru ture, les mots sont des objets linéaires : une lettre a

au plus un su esseur. Une extension naturelle onsiste à dénir des objets

à stru ture arbores ente. Ces objets,les termes,ne sont pas onsidérés dans

(16)

2.3 Relations binaires

Une relation binaire

R

d'un ensemble

E

dans un ensemble

F

est une partie de

E × F

. On note aussi

eRf

pour

(e, f ) ∈ R

.

Le domaine

Dom(R)

etl'image

Im(R)

de

R

sont donnéspar

Dom(R) = {e ∈ E | ∃f ∈ F, eRf }

et

Im(R) = {f ∈ F | ∃e ∈ E, eRf }

.

L'image d'une partie

A

de

E

est

R(A) = {f ∈ F | ∃e ∈ A, eRf }

. En parti ulier, ona

Im(R) = R(E)

.

Pour

E = F

, ondit que

R ⊆ E × E

est une relation binairesur

E

. Dans e

as,



R

est réexive si

eRe

pour tout

e ∈ E

; 

R

est symétrique si

R

−1

= R

;



R

est anti-symétrique sipour tout

eRf

et

f Re

,on a

e = f

; 

R

est transitive si pour tout

eRf

et

f Rg

ona

eRg

.

2.4 Graphes

Onserestreintauxgraphes ditssimples ( 'est-à-diresansmultipli ité)et

orientés.

Un graphe

G = (S, A)

est déni par un ensemble

S

de sommets et un ensemble

A ⊆ S × S

d'ar s. On dit qu'un ar

(s, t) ∈ A

est de sour e

s

et de but

t

etqu'ilrelie

s

à

t

.Un graphe

G

est ni sison ensemblede sommets

S

est ni.

Legrapheni

({p, q, r, s}, {(p, q), (q, r), (r, q)})

estreprésenté i-dessous.Pour

(p)

(q)

(r)

(s)

Fig. 2.1 Un grapheni.

e graphe, le sommet

s

n'est ni sour e, ni but d'un ar ; on dit alors que

s

est un sommet isolé.

(17)

sous laformed'étiquettes.Ainsi,un grapheest un ensembled'ar sétiquetés.

Soit

E

un ensembleni d'étiquettesd'ar s. Ungraphe

G

sur unensemblede sommets

S

est une partie de

S × E × S

. Tout élément

(p, a, q) ∈ G

est un ar de sour e

p

, de but

q

et d'étiquette

a

. L'ensemble

S

G

des sommets d'un graphe

G

est donné par :

S

G

= {p ∈ S | ∃a ∈ E, ∃q ∈ S, (p, a, q) ∈ G ∨ (q, a, p) ∈ G}

.

Dans e as,

G

ne ontient pas de sommet isolé. De plus, on onsidère l'en-semble

E

G

= {a ∈ E | ∃p, q ∈ S, (p, a, q) ∈ G}

des étiquettes du graphe

G

.

Par exemple le graphe ni

G = {(p, a, q), (q, b, r), (r, a, q)}

est représenté i-dessous. Un graphe

G

est déterministe si pour haque sommet

s

de

G

tous

(q)

(p)

(r)

b

a

a

Fig. 2.2Un graphe ni étiqueté.

les ar s de sour e

s

ont des étiquettes diérentes :

∀s ∈ S

G

, (s, a, p) ∈

G ∧ (s, a, q) ∈ G =⇒ p = q

.Tout ar

(p, a, q) ∈ G

pourraêtre noté

p

a

G

q

ou simplement

p

a

→ q

si le graphe

G

est sous-entendu. De lamême manière que l'on a ajouté de l'information sur les ar s, on peut en ajouter sur les

sommetsd'ungraphe.Soit

C

unensemblenid'étiquettes desommets.Pour diéren ier les étiquettes des ar s des étiquettes des sommets, on appellera

es dernières des ouleurs.

Un graphe

G

sur un ensemble

S

est une partiede

S × E × S ∪ C × S

. Tout élément

(c, p) ∈ G

,noté aussi

cp

, est ladonnée d'unsommet

p

oloriépar la ouleur

c

.

Prenant

a

et

b

des étiquettes d'ar s et

i

et

f

des ouleurs de sommets, on représente le graphe ni

G = {(p, a, q), (q, b, r), (r, a, q), ip, f r, is, f s}

à la

(18)

(r)

(p)

(q)

(s)

f

b

a

a

i

i

f

Fig.2.3 Un graphe ni étiqueté et olorié.

gure 2.3. Dans un sou is de larté, on représente un sommet par son nom

entre parenthèses an de lediéren ier d'une ouleur.

Remarquons que dans e formalisme, onautorise les sommetsisolés s'ils

sont oloriés; 'est le as du sommet

s

à lagure 2.3.

En plus de l'ensemble

S

G

des sommets d'un graphe

G

et de l'ensemble

E

G

des étiquettes, ondénit l'ensemble

C

G

= {c | ∃p ∈ S

G

, cp ∈ G}

des ouleurs des sommets de

G

, et on note

S

G,c

l'ensemble des sommets de

G

oloriés par une ouleur

c

:

S

G,c

:= {s ∈ S

G

| cs ∈ G}

.

Le degré entrant (respe tivement le degré sortant) d'un sommet

s ∈ S

G

,

d

G

(s)

(resp.

d

+

G

(s)

),ousimplement

d

(s)

et

d

+

(s)

s'iln'y a pas d'ambiguïté

sur lenomdugraphe,estlenombred'ar sdont

s

estlebut (resp.lasour e):

d

G

(s) := |G ∩ S

G

× E × {s}|

d

+

G

(s) := |G ∩ {s} × E × S

G

|

.

Ledegré

d



(s)

d'un sommet

s

est lasomme de ses degrésentrant etsortant:

d



(s) := d

(s) + d

+

(s)

.

Le degré

d(G)

d'un graphe

G

est le maximum des degrés de ses sommets. Pour legraphe de la gure 2.3,

d

+

(p) = 1

,

d

(q) = 2

et

d



(s) = 0

.

Un hemin d'étiquette

u = a

1

. . . a

n

dansun graphe

G

est une suitede

n

ar s onsé utifs de

G

(19)

Un tel heminest de longueur

n ≥ 0

etest aussi désignépar le mot

p

0

a

1

p

1

a

2

p

2

. . . p

n−1

a

n

p

n

∈ S

G

(E

G

S

G

)

en supposant l'absen e d'ambiguïté entre sommets et étiquettes de

G

i.e.

S

G

∩ E

G

= ∅

.

Si e heminexiste dans

G

, onditque

p

n

est a essible àpartir de

p

0

(ou

p

0

est o-a essible à partir de

p

n

) par un hemin de

G

étiqueté par

u

, e que l'on note

p

0

u

=⇒

G

p

n

. On pourra s'abstraire de l'étiquette

=⇒

G

ou du nom du

graphe

u

=⇒

lorsqu'il n'y a pas d'ambiguïté.

Pour legraphe de la gure 2.3,

p

est un hemin d'étiquette

ε

etde longueur

0

. De plus,

paqbraq

est un hemin d'étiquette

aba

de longueur

3

allant de

p

à

q

.

Un hemin

p

0

a

1

p

1

a

2

p

2

. . . p

n−1

a

n

p

n

de longueur

n > 0

ayantlesmêmes extré-mités

p

0

= p

n

est appeléun ir uit.

Un mot

u ∈ E

G

est une tra e de

G

s'il étiquette un hemin entre deux sommets de

G

. On dénit

L(G, I, F )

l'ensemble des tra es de

G

allant des sommets de

I

à des sommetsde

F

:

L(G, I, F ) := {u ∈ E

G

| ∃ s ∈ I, ∃ t ∈ F, s

=⇒

u

G

t}

.

Le graphe inverse

G

−1

de

G

est l'ensembledes sommets oloriésde

G

et des ar s inverses de

G

:

G

−1

:= {t

→ s | s

a

→ t} ∪ {cs ∈ G | c ∈ F

a

1

∧ s ∈ S

G

}

.

Une haîne (respe tivement un y le) de

G

est un hemin (respe tivement un ir uit) de

G ∪ G

−1

. La distan e

d

G

(s, t)

entre deux sommets

s, t ∈ S

G

d'un graphe

G

est laplus petite longueur des haînesde

G

entre

s

et

t

:

d

G

(s, t) := min({|u| | s

=⇒

u

G∪G

−1

t} ∪ {ω})

.

Si tout sommet

p ∈ S

G

est a essible à partird'un sommet

r

:

r =⇒

G

p

(20)

on ditde

r

qu'ilest une ra ine de

G

.

La restri tion

G

|P

d'un graphe

G

à un ensemble

P

de sommets est le sous-graphe induit par

P

:

G

|P

= {(s, a, t) ∈ G | s, t ∈ P } ∪ {cp ∈ G | p ∈ P }

.

Le sous-graphe a essible à partir d'unsommet

s

est larestri tion de

G

aux sommets a essibles àpartir de

s

:

G

↓s

= G

|{q | s =⇒ q}

.

On dénit également le sous-graphe de

G

a essible (resp. o-a essible) à partir d'une ouleur

c

.

G

c→

(resp.

G

→c

) est larestri tion de

G

aux sommets a essibles (resp. o-a essibles) àpartir des sommets oloriéspar

c

:

G

c→

=

S

cs∈G

G

↓s

G

→c

= G

|{s∈G | ∃t, s =⇒

G

t ∧ ct∈G}

et on introduit la notation

G

c

1

→c

2

pour désigner la restri tion de

G

aux sommets a essibles par la ouleur

c

1

et o-a essibles par la ouleur

c

2

.

(21)

Des automates nis

Notre étude on erne les langages de mots. Il existe diérents types de

langagesquel'onregroupepar lasses.Onpeut iternotammentleslangages

réguliersou en oreleslangages algébriques. Pour haque lasse de langages,

il existe une lasse de générateur : les grammaires de mots. Dans le premier

paragraphe,aprèsavoirrappelé equesontlesgrammairesdemots,nous

dé- rirons la lassi ation des langagesselon Chomsky [Ch56℄. Lesgrammaires

de mots ne sont pas les seuls objets qui nous permettent de travailler sur

les langages. Nous utilisonségalement des graphes oloriéset étiquetés :les

automates. Pour haque lasse de langage, ondé rit une lasse d'automates

de sorte que les tra es de es automates orrespondent aux langages. Dans

le paragraphe2 de e hapitre, nous dé rivons lesautomates nis qui

re on-naissent les langages réguliers, l'étude des automates asso iés aux langages

algébriques sefaisant au hapitre suivant.

3.1 Grammaires de mots

Dans e paragraphe,nous dé rivons un objet qui permet d'engendrer les

langagesde mots :les grammairesde mots.Ces langages(et lesgrammaires

asso iés) peuvent être lassiées en fon tion de leur ompléxité. Ce i a été

(22)

3.1.1 Dénition

Unegrammaire

R = (Σ, N , D, δ)

est un quadruplet où



Σ

est un alphabet de symboles dits terminaux (notés par des lettres minus ules),



N

est un alphabet de symboles dits non-terminaux (notés par des lettres majus ules),

 un non-terminalde départ

D

appeléaxiome,  un ensembleni

δ

de règles de la forme

u → w

telles que

u ∈ (N ∪ Σ)

+

et

w ∈ (N ∪ Σ)

;

et onappelle

u

le membre gau he de la règle et

w

son membre droit. Ainsi,

δ

est une relationbinairesur lesmots :

δ ⊆ (N ∪ Σ)

+

× (N ∪ Σ)

.

Dansl'exemple suivant,nous donnons une grammaireet une

représenta-tion s hématique des règles.

Exemple 3.1.1. La grammaire

R = ({a, b}, {A}, A, {(A, ε), (A, aAb)})

est un premierexemplede grammaire. Pour plus delisibilité,nous dé rivonsses

règles à lagure 3.1.

ε

a b A A A R

Fig. 3.1 Unegrammaire de mots.

On diéren ie les grammaires de mots en fon tion de la forme de leurs

règles.Ce iaétéfaitparNoamChomsky[Ch56℄etestdis utéauparagraphe

(23)

L'ensemble

δ

desrèglesdénitunerelationbinairederé riture sur

(Σ ∪ N )

.

Un mot

u = u

xu

′′

se ré rit selon la grammaire

R

en un mot

v = u

wu

′′

, et on note

u = u

xu

′′

−→

R

u

wu

′′

= v

si

x −→ w

est une règle de

R

, i.e.

(x, w) ∈ δ

.

Dans l'exemple suivant, nous détaillons les premières ré ritures en fon tion

des règlesde l'exemple3.1.

Exemple 3.1.2. Les ré ritures suivant la règle

(A, aAb)

sont représentées horizontalementet elles suivant

(A, ε)

lesont verti alement.

A

aAb

aaAbb

aaaAbbb

. . .

ε

ab aabb aaabbb

Lafermetureréexiveettransitivede larelationderé riture (suivantune

grammaire

R

) est notée

−→

R

et on parle alors de dérivation (selon

R

). Le mot

u

se dérive en le mot

v

, noté

u −→

R

v

, si il existe une suite de

n ≥ 0

ré ritures selon

R

de

u

à

v

:

u = u

0

−→

R

. . . −→

R

u

n

= v

.

Le langage engendré

L(R)

par une grammaire

R = (Σ, N , D, δ)

est l'en-semble des mots de

Σ

qui peuvent se dériverà partirde l'axiome

D

:

L(R) = {u ∈ Σ

| D −→

R

u}

Le langage engendré par la grammaire de l'exemple 3.1 est

{a

n

b

n

| n ≥ 0}

;

autrement dit, ette grammaire engendre tous les mots ommençant par

n

o urren es de lalettre

a

, suivies par

n

o urren es de lalettre

b

.

3.1.2 La hiérar hie de Chomsky

(24)

roissante, onstituant ainsi la hiérar hie de Chomsky.

A ha unede es lasses,onfait orrespondreun typede grammairedemots

engendrant la famillede langages. Ces types de grammaires se diéren ient

parlastru turesyntaxiquedesrègles.Cesinformationssontregroupéesdans

le tableausuivant,

Niveau Langage Grammaire Forme des règles

3 régulier linéaire droite

A → aB

ou gau he ou

A → Ba

2 algébrique algébrique

A → w

1 ontextuel ontextuelle

sAt → sut

0 ré ursivement générale

v → w

énumérable dans lequel

A, B ∈ N

,

s, t ∈ Σ

,

u, v, w ∈ (Σ ∪ N )

et

u 6= ε

.

On peut distinguer des sous- lasses dans ette hiérar hie. Une subdivision

est donnée à lagure 3.2, ave lesnotations suivantes :



RE

est la lasse deslangagesré ursivement énumérables(a eptés par les ma hinesde Turing),



CONT

estla lassedeslangages ontextuels(a eptésparlesma hines de Turing linéairement bornés),



ALG

est la lasse deslangagesalgébriques(a eptéspar lesautomates à pile),



DALG

est la lasse des langages algébriques déterministes (a eptés par les automates àpile déterministes),



REG

est la lasse des langages réguliers (a eptés par les automates nis) et



F IN

est la lasse des langages nis.

Dans e do ument, nous nous intéressons prin ipalement aux niveaux trois

et deux de la hiérar hie, 'est-à-dire aux langages réguliers et aux langages

algébriques. Les langages étant généralement des ensembles innis, il n'est

(25)

RE

ALG

REG

CONT

FIN

DALG

Fig. 3.2 La hiérar hiede Chomsky

sur leslangages en observant lespropriétés de leur des ription.

Nous verrons dans lepro hain paragraphe l'utilité des automates nis pour

travailler sur les langages réguliers. Cette lasse des langages possède bien

des propriétés de dé idabilité ommepar exemplela lturepar interse tion

et par omplément, e qui permet notamment de dé ider de l'in lusion (la

va uité d'un langage régulier étant dé idable). Mais es propriétés ne sont

pas né essairement valablespourtoutes lesautres lassesde lahiérar hiede

Chomsky. Par exemple la famille des langages ontextuels possède les

pro-priétés de lture deslangagesréguliersmais lava uitéde es langagesn'est

pas dé idable. Un autre exemple est la lasse des langages algébriques qui

n'est pas lose parinterse tion.Néanmoins, nous montrons qu'ilest possible

de généraliser les propriétés de lture et de dé idabilité des langages

ré-guliers à des sous- lasses (stri tes) de langages algébriques en utilisant une

méthode dite de syn hronisation. Après avoir dé rit les propriétés qui nous

(26)

3.2 Automates nis

Danslahiérar hiedeChomsky,leslangagesrégulierssontauniveau3.Ils

sontparmileslangagesinnis eux quiontlepluspetit pouvoird'expression

( f. exemple 3.2.1).

Pour un alphabet

Σ

, onnote

Reg(Σ

)

l'ensembledes langagesréguliersdont

les mots sont onstruits sur l'alphabet

Σ

. Rappelons que

Reg(Σ

)

est laplus petite famillede langagestelle que,pour

tout langage

L, L

∈ Reg(Σ

)

:



est un langagerégulier;



∀a ∈ Σ, {a} ∈ Reg(Σ

)

;



Reg(Σ

)

est losparunion:

L∪L

= {u | u ∈ L ∨ u ∈ L

} ∈ Reg(Σ

)

;



Reg(Σ

)

est los par on aténation :

L.L

= {uv | u ∈ L ∧ v ∈ L

} ∈ Reg(Σ

)

,



Reg(Σ

)

est los par l'étoile de Kleene qui est la fermetureréexive et

transitivede la on aténation :

L

= {u

1

. . . u

n

| n ≥ 0 ∧ u

1

, . . . , u

n

∈ L} ∈ Reg(Σ

)

.

Exemple3.2.1. Lelangage

Σ

detouslesmotssur

Σ

estunlangagerégulier. Sur l'alphabet

{a, b}

, le langage

L = a

b

= {a

m

b

n

| m, n ≥ 0}

des mots

ommençantpar unesuite de

a

de longueurquel onque, suiviepar une suite de

b

de longueur quel onqueest aussi un langage régulier.

Mais le langage

L

= {a

n

b

n

| n ≥ 0} ⊂ L

n'est pas régulier : onne peut pas

exprimer l'égalitépar un langagerégulier.

Il existe bien des façons de dénir un langage régulier. Nousdonnons i i

deux types de ma hines abstraites pour re onnaître leslangages réguliers, à

savoir lesgrammaires linéairesgau hes et lesautomates nis.

3.2.1 Les grammaires linéaires gau hes

Enthéorie des langages, il est bien onnu que leslangages régulierssont

les langagesengendrés par les grammaires linéairesgau hes.

(27)

membre gau he de ses règles est un unique non-terminal et haque membre

droit est un mot terminal ou un mot omposé d'un non-terminal suivi par

un mot terminal:

∀(A, w) ∈ δ, A ∈ N ∧ w ∈ N .Σ

∪ Σ

.

est la on aténation sur

(N ∪ Σ)

.

Remarque : Dans la littérature, il existe également les grammaires

linéaires droites pour lesquelles, dans le membre droit des règles, le

non-terminal se trouve à droite du mot terminal. Commeles deux modèles sont

équivalents,nous en avons hoisi un arbitrairement.

Lesgrammairesdemotsorentunefaçondespé ierlastru turesyntaxique

des langages.Uneautrefaçondedé rireoure onnaîtreleslangagesréguliers

est l'utilisationdestra esdesautomatesnis. Ceux- ipermettenteneetde

donner une manièregéométrique de des ription des langagesréguliers.

3.2.2 Les automates nis

Unautomate ni est une ma hine abstraite omposée d'états etde

tran-sitions. Un automate ni

M = (S, A, Σ, I, F )

est ladonnée  d'un ensemble ni

S

d'états,

 d'un ensemble

A

de transitions entre lesétats, étiquetées sur

Σ

:

A ⊆ S × Σ × S

,

 d'un ensemble

I ⊆ S

d'états initiaux,  et d'un ensemble

F ⊆ S

d'états naux.

Tout automate ni

M = (S, A, Σ, I, F )

est le graphe olorié et étiqueté

G = (S, A)

telque

 les sommets orrespondants aux états initiaux sont oloriés par une

ouleur parti ulière,disons

i

:

I = S

G,i

et

 lessommets orrespondantsauxétats nauxsont oloriésparune

ou-leur parti ulière, disons

f

:

F = S

G,f

.

Un automate

M = (S, A, Σ, I, F )

est déterministe si son graphe

(S, A)

est déterministe et qu'il ne possède qu'un seul état initial

|I| = 1

. Par la suite,

(28)

nous identieronsun automate ni ave son graphe olorié.

Nous utilisons i i les automates omme a epteurs de langages. Un langage

L(M)

onstruitsur

Σ

est a epté (ou re onnu)par unautomate

M = (S, A)

s'ilest l'ensembledes tra esde

M

entrelessommetsinitiauxet eux naux:

L(M) = L(M, I, F ) ⊆ Σ

.

Les langages réguliers qui ont été dénis par lture des langages nis par

union, on aténation etétoile, sontexa tement leslangagesa eptés parles

automates nis. Ce résultatest dû à Kleene[Kl56℄.

Théorème 3.2.2. Les langages réguliers sont les langages a eptés par

les automates nis.

Onpeuttransformer toutautomateni en un automatenidéterministe

et ompletéquivalent.

Propriété 3.2.3. Tout langage régulier est a epté par un automate ni

déterministe et omplet.

Par l'opérationde déterminisation

Det

appliquéeà un grapheni

G

, on onstruit legraphe ni

Det(G)

déterministetel que

L(G) = L(Det(G))

:

Det(G) := {S

1

→ S

a

2

| S

1

⊆ S

G

∧ ∀t (t ∈ S

2

⇐⇒ ∃s ∈ S

1

, s

a

G

t)}

∪ {i{p | ip ∈ G}}

∪ {f P | P ⊆ S

G

∧ ∃p ∈ P, f p ∈ G}

La propriété est ee tive : tout automate ni

M

est transformé en un automate ni

M

déterministe et omplet tel que

L(M)

=

L(M

)

. La

onstru tion est illustrée àla gure 3.3.

Notons que, de manière générale, nous ne représentons pas les sommets

non a essibles à partir du sommet initial. C'est en utilisant les automates

nis quenousallonsdé rirelespropriétés de lturepar interse tionet

(29)

sous-(p)

(q)

(r)

(s)

(t)

{t}

{r}

{p,q}

{r,s}

{r,t}

b a i a a i b f a a b f a b a b a a b b a b f f i

Fig. 3.3 Déterminisationd'un automate ni.

3.2.3 Propriétés de fermeture

Pardénition,lafamilledeslangagesrégulierssur unalphabet

Σ

est lose par union, par on aténation et par l'étoile de Kleene. Elle est aussi fermée

par interse tion etpar omplémentaire.

Nousdonnons i iles onstru tionshabituellessur lesautomatesnis pourla

lture par interse tion, par omplémentaire, mais aussi pour la lture par

on aténation et sa fermetureréexive ettransitive.

L'interse tion

Soient

L

1

et

L

2

les langagesréguliers sur

Σ

re onnus respe tivement par des automatesnis

G

et

H

.Nous onstruisonsun automate ni qui a epte le langage

L

1

∩ L

2

. Pour ela onutilise le produit de syn hronisation

G × H

de

G

par

H

déni omme suit :

G × H := {(s, p)

→ (t, q) | s

a

a

G

t ∧ p

a

H

q}

∪ {i(s, p) | is ∈ G ∧ ip ∈ H}

∪ {f (s, p) | f s ∈ G ∧ f p ∈ H}

L'automate ainsi onstruit est ni et ona

L(G × H, i, f ) = L

1

∩ L

2

.

Ainsi,

Reg(Σ

)

est los par interse tion.

Prenons les automates

G

et

H

représentés à la gure 3.4 qui re onnaissent les langages

L(G) = a(ba)

b

et

L(H) = a

b(a + b)

(30)

(r)

(p)

(q)

(s)

(t)

G =

H =

f

b

a

a

i

b

i

a

b

f

a

Fig. 3.4 Deux automates nis

G

et

H

.

La gure 3.5 illustre la onstru tion de l'automate

G × H

qui re onnaît le langage

L(G) ∩ L(H) = L(G)

mais n'est pas isomorphe à

G

.

(p,s)

(q,s)

(r,t)

(q,t)

a

i

b

f

b

a

Fig.3.5 L'automate

G × H

. Le omplémentaire

Soit

G

un automate ni re onnaissant le langage régulier

L = L(G)

. Nousvoulons onstruire un automatere onnaissant le omplémentaire de

L

, à savoir

Σ

− L = {u ∈ Σ

| u /

∈ L}

.

La onstru tionse fait en deux étapes :

 on onstruit l'automate

H

déterministe et omplet qui re onnaît le langage

L(G)

,

 on onstruit l'automate

H

en inter hangeant les sommets naux et non-naux de

H

:

H = (H − f S

H

) ∪ {f s | s ∈ S

H

∧ f s /

∈ H}

. L'automate

H

est ni etre onnaît le omplémentaire de

L

.

Pourl'automate

G

déniàlagure3.3, l'automate

H

delagure 3.6 re on-naît le omplémentaire de

L(A)

.

(31)

{t}

{r}

{p,q}

{r,s}

{r,t}

a b a b a b a a b b a b f f i f

Fig.3.6 L'automate omplémentde elui àla gure 3.3.

La on aténation

Soient

L

1

et

L

2

deux langages réguliersre onnus respe tivement par des automates nis

G

et

H

. On peut supposer que les sommets de

G

et de

H

sont distin ts:

S

G

∩ S

H

= ∅

.

Pour onstruire l'automatequia epte

L

1

.L

2

,onrelielessommetsnaux de

G

aux buts des transitions initiales de

H

(en leur retirant leurs ouleurs si

ε /

∈ L

2

):

G.H := (G − {f s ∈ G | ε /

∈ L(H)})

∪ (H − iS

H

)

∪ {s

→ t | f s ∈ G ∧ ∃p, ip ∈ H ∧ p

a

a

H

t}

En prenant lesautomates

G

et

H

dénisà lagure 3.4, on onstruit l'auto-mate

G.H

de la gure3.7.

(p)

(q)

(r)

(t)

(s)

b

a

a

i

a

b

a

b

f

a

b

Fig. 3.7 L'automate

G.H

.

(32)

On peut remarquer que l'automate qui re onnaît la on aténation des

lan-gagespeutnepas êtredéterministe,et elamêmesilesautomates

re onnais-sant es langages lesont. Maison peut toujours ledéterminiser.

En appliquant

Det

à l'automate de l'exemple pré édent, on obtient l'au-tomate déterministe de la gure 3.8 où on s'est restreint aux sommets

o-a essibles à partir des sommets naux.

{t}

{s}

{q}

{r}

{p}

{q,s}

{r,t}

{s,t}

a

a

a

i

b

a

a

b

a

a

b

b

b

f

f

b

f

b

Fig. 3.8 Déterminisation de l'automate de la gure 3.7.

L'étoile de Kleene

Soit

L

un langage régulier re onnu par un automate ni

G

(que l'on peut supposer déterministe). Nous her hons à onstruire un automate ni

G

a eptant le langage

L

. Pour ela, on transforme l'automate

G

en un automate équivalent

G

de sorte que le sommet initial de

G

ne soit but

d'au un ar . Soit

p

un nouveau sommet :

G

:= (G − {is | is ∈ G}) ∪ {ip}

(33)

A partir de

G

, on onstruit

G

+

: pour tout ar ayant pour but un sommet

nal on ajoute un ar de même sour e et ayant pour but le sommet initial

de

G

:

G

+

:= G

∪ {s

→ p | ∃t, f t ∈ G

a

∧ s

→ t}

a

Cette grammairere onnaît lelangage

L

+

. Ilne resteplus qu'àrajouter

l'a - eptation du mot vide:

G

:= G

+

∪ {f p}.

G

est don bien un automate ni re onnaissant

L(G)

. A titre d'exemple,

onsidérons l'automate ni

H

de la gure 3.4. L'automate obtenu par ette onstru tion etdon a eptant

L(H)

est représenté à lagure 3.9.

(p)

(t)

(s)

i

a

b

a

b

f

a

b

f

a

b

Fig. 3.9 L'automate

H

.

L'utilisationdes automates nis dans l'étude des langages réguliersnous

donne une méthode e a e et simple d'obtenir l'ee tivité des propriétés

de lture de es langages. Dans le hapitre suivant, nous dé rivons les

lan-gages algébriques. Cette lasse de langages n'étant pas lose pour plusieurs

des opérations présentées i i, es onstru tionsne leur sont pas extensibles.

Néanmoins, nousverronsdans le hapitre4 ommentdénirdes sous- lasses

stri tes de langages algébriques pour lesquelles on étendra les onstru tions

de e hapitrepourprouverleurspropriétés de ltureparlesopérationsque

(34)

Aux automates réguliers

4.1 Automates à piles

Dansle hapitrepré édent,nousavonstraitédeslangagesa eptésparles

automatesàétatsnis:leslangagesréguliers.Danslahiérar hiedeChomsky,

ils sont stri tement in lus dans leslangages algébriques. De même quepour

leslangagesréguliers,ilexistediérentsformalismesnispourengendrer(ou

re onnaître)leslangagesalgébriques.Nousdonnonslamanièrehistoriquede

les onstruire à savoir à l'aide des grammaires algébriques (de mots). Nous

voyonsensuiteque esgrammairesdemotsontlemêmepouvoird'expression

que les automates à pile. En représentant les transitions de es ma hines

par des graphes, on dénit la lasse des graphes réguliers. Une propriété

géométrique de es graphes a permis de dénir un type de grammaires sur

les graphes, qui étend lesgrammaires de mots.

4.1.1 Les grammaires algébriques

Un langage est algébrique s'il est engendré par une grammaire de mots

dite algébrique. Les règles de es grammaires sont telles que tout membre

gau he est réduit à une lettre dite non-terminale et que tout membre droit

est un mot omposé de non-terminaux et d'autres lettres dites terminales.

La grammaire

R = (Σ, N , D, δ)

telle que

(35)

est algébrique. La grammaire représentée à la gure 3.1 est algébrique et

engendre le langagealgébrique

L(R) = {a

n

b

n

∈ Σ

| n ≥ 0}

.

4.1.2 Les automates à piles

Un automate à pile est une ma hine abstraite omposée d'une bande de

travail munie d'une tête de le ture à états nis et d'une mémoire sous la

forme d'une pile LIFO (Last In First Out i.e. dernier entré, premier sorti).

Les mouvements de la tête de le ture sont uni-dire tionnels et sont

ondi-tionnésparunensemblederèglesappelérelationde transition(ouégalement

programme de lama hine). Lagure4.1représente un automateà piledont

la tête de le ture dans l'état

p

lit une lettre

a

sur la bande de travail et possèdele mot

AU

dans sapile, ave

A

en sommet de pile.

a

b c d

e

p

− −

A

U

Fig. 4.1 Un automate àpile.

Nous réservons un symbolede fond de pile,

, quel'on ne peut niempiler ni dépiler.

Un automate à pile

M = (S, Γ, Σ, s

0

, F, δ)

est déni par  un ensembleni

S

d'états,

 un alphabet

Γ

de lettres de piletelque

⊥ /

∈ Γ

,  un alphabet

Σ

d'étiquettes,

 un étatinitial

s

0

∈ S

,

 un ensemble

F ⊆ S

d'états naux,

 une relation de transition

δ

entre les ongurations de l'automate. Une onguration d'un automate àpileest un mot de

dé rivantl'état

de l'automate etle mot de sa pile.

Ayant

p, q ∈ S

,

a ∈ Σ ∪ {ε}

,

A ∈ Γ ∪ {⊥}

et

B ∈ Γ

, la relation de

(36)

forme

pA

→ qBA

a

où l'on empilela lettre

B

sile sommetde pileest la lettre

A

, ou

pA

→ q

a

ave

A 6= ⊥

où l'on dépile lalettre

A 6= ⊥

en sommetde pile, ouen ore

pA

→ qA

a

où l'on ee tue un hangement d'étatsans modierla pile.

Les règles de la première forme sont qualiées de règles d'ajout, elles de la

se onde formede règles de retrait (mais

ne peut être dépilée) et elles de la dernière formede règles d'a tion interne.

Exemple 4.1.1. Soit l'automateà pile

M

suivant:

M = ({q

0

, q

1

, q

2

, q

f

}, {A}, {a, b, ε}, q

0

, {q

f

}, δ

M

)

ave

δ

M

donnépar lesrègles suivantes :

q

0

a

→ q

1

A⊥

q

1

A

a

→ q

1

AA

q

1

A

b

→ q

2

q

2

A

b

→ q

2

q

2

ε

→ q

f

Pour la règled'ajout

pA

a

→ qBA

,

δ

réalise latransitionsuivante :

pAU

→ qBAU (ajout)

a

AU ∈ Γ

. De même l'appli ation d'une règle de retrait

pA

a

→ q

fait

passer l'automate de la onguration

pAU

à la onguration

qU

, et une a tion interne

pA

a

→ qA

dé len hera lepassage de la onguration

pAU

àla onguration

qAU

:

pAU

→ qU (retrait)

a

(37)

Prenant

M = (S, Γ, Σ, s

0

, F, δ)

un automate à pile, nous dénissons son graphe des transitions dontles sommetssont des ongurations de

M

:

H

M

= {pAU

a

→ qV U | pA

→ qV ∈ δ ∧ AU ∈ Γ

a

⊥}

.

Plus parti ulièrement, nous nous intéressons aux ongurations a essibles

par larelation de transitionà partir de la onguration initiale

s

0

et nous notons

G

M

:= (H

M

∪ {i(s

0

⊥)} ∪ {f (sU) | s ∈ F ∧ U ∈ Γ

⊥})

↓(s

0

⊥)

le graphe de transition des ongurations de l'automate

M

.

Notons que ette dénition d'automate à pile orrespond dans lalittérature

auxautomatesàpilesditsfaibles: haquetransitionnemodielataillede

la piled'au plus un. Maislesautomates à pilefaibleset lesautomates àpile

dénissent lesmêmes graphes de transition(àisomorphisme près) [Ca06℄.

Le langage

L(M)

re onnu par

M

est l'ensemble des tra es entre le sommet olorié par

i

etles sommets oloriés par

f

:

L(M) = L(G

M

, i, f )

.

Un automate à pile

M

est omplet si

L(M) = Σ

.

Le graphe de transition de l'automate à pile

M

déni à l'exemple 4.1.1 est représenté àla gure 4.2, et

L(M) = {a

n

b

n

| n > 0}

.

(q0⊥)

(q1

A⊥)

(q2A⊥)

(q2AA⊥)

(q1AAA⊥)

(q2AAA⊥)

(q1AA⊥)

(qf

⊥)

(q2⊥)

i a b b a b b a b b f

ε

Fig. 4.2 Graphe de transitionde l'automateà pilede l'exemple 4.1.1.

Les automates à pilere onnaissent les langages engendrés par les

gram-maires algébriques.

(38)

Unautomate à pileest déterministe si

 d'une partpour haque onguration,la ongurationquel'on obtient

par larelationde transitionest unique :

pA

→ qV ∈ δ ∧ pA

a

→ q

a

V

∈ δ =⇒ q = q

∧ V = V

 et d'autre part à partir d'une onguration, on ne peut avoir que soit

des transitionsétiquetées pardeslettresde

Σ−{ε}

,soitdestransitions étiquetées par

ε

:

pA

→ qV ∈ δ ∧ pA

a

→ q

ε

V

∈ δ =⇒ a = ε

.

Les langages engendrés par les automates à pile déterministes sont les

lan-gages algébriques déterministes.

Un automateàpileesttemps réel s'ilne possèdeau une transitionétiquetée

par

ε

:

c

→ c

a

∈ δ =⇒ a ∈ Σ − {ε}

.

Les automates àpile tempsréel re onnaissent leslangagesalgébriques.

Ces diverses restri tions d'automates à pile re onnaissent des sous-familles

diérentesde langagesalgébriques, ommeindiquéparles héma i-dessous:

Alg. tpsréel Alg. dét. Alg. dét.

Fig. 4.3 Sous-famillesde langages algébriques.

Le langage

{a

n

b

n

| n ≥ 0}

a epté par l'automate de l'exemple4.1.1 est un

langage algébriquedéterministe ettemps réel.

Le langage

{a

n

b

n

| n ≥ 0} ∪ {a

n

b

2n

| n ≥ 0}

est un langage algébrique non

déterministe.

Donnons un langage algébrique déterministe mais non déterministe temps

(39)

i⊥

→ pA⊥ pA

a

→ pAA pB

a

→ pBB

c

qA

→ pA

ε

pA

→ p

b

pB

→ p

d

qB

→ q

ε

pA

→ pBA pB

c

→ qB

e

p⊥

→ i⊥

ε

pA

→ qA

e

d'état initial et nal

i

. Son graphe de transition

G

M

est représenté omme suit : a a a b b b d d d e e e e e e e e

ε

ε

ε

ε

ε

ε

ε

e i f

ε

ε

ε

d d d

(i⊥)

(pA⊥)

(pAA⊥)

(qA⊥)

(p⊥)

(qBA⊥)

(qBBA⊥)

(α)

ave

α = pBA⊥

(pBBA⊥)

Fig.4.4 

G

M

est déterministeet non temps réel.

Lelangage

L(M)

re onnu par

M

est un langage algébriquedéterministe mais il ne peut pas être re onnu par un automate àpile déterministetemps

réel.

Indiquonsquelaformeparti ulièredesrèglesdesautomatesàpiles(ajout,

retrait,a tion interne)n'est pas une restri tion pour leslangagesengendrés,

même en se restreignant aux automates déterministes et/ou temps réel. En

fait, ilsdénissent lesmêmes famillesde graphes de transition[Ca06℄.

Muller et S hupp furent les premiers à étudier les automates à pile du

(40)

sens, un graphe de degré ni est régulier si on peut le dé omposer par

dis-tan e à partir d'un sommet en un nombre ni de omposantes onnexes (à

isomorphisme près).

Pour une meilleure ompréhension des graphes que nous utilisons dans e

do ument, attardons nous sur ette notion de dé omposition nie par

dis-tan e. On se restreint aux graphes

G

dont tout sommet est onne té (par une haîne) à un sommet initial : toute omposante onnexe de

G

possède aumoins un sommetinitial.Dans e as,la distan e de toutsommet

s

de

G

dénie par

d

G

(s) := min{d

G

(s, t) | it ∈ G}

= min{|u| | ∃t (it ∈ G ∧ s

=⇒

u

G∪G

−1

t)}

est nie. En parti ulier, lessommets de distan e nulle sont lessommets

ini-tiaux :

d

G

(s) = 0 ⇐⇒ is ∈ G

.

Dénissons la dé ompositionde

G

àpartir de ses sommetsinitiaux. La pre-mière étape de ladé ompositionde

G

onsiste àretirerlessommetsinitiaux de

G

, à savoir les ouleurs et les ar s portant sur un sommet initial, et à prendre pour sommet initial tout nouveau sommet d'un ar retiré;

autre-ment dit, onobtientle graphesuivant :

b

G := G

|{s∈S

G

| is /

∈G}

∪ {is | is /

∈ G ∧ ∃t (s −→

G∪G

−1

t ∧ it ∈ G)}

.

Puis, itérativement, on ontinue ladé omposition à partir du graphe

G

b

ob-tenu, àsavoir :

b

G

0

:= G

et

G

b

n+1

= c

G

b

n

pour tout

n ≥ 0

. On dit que

G

est de dé omposition nie par distan e si

{ b

G

n

| n ≥ 0}

n'a

qu'un nombre ni de omposantes onnexesnon isomorphes.

(41)

a

c

a

c

a

c

b

b

b

b

f

i

est de dé omposition nie par distan e n'ayant par dé omposition que les

trois omposantes onnexes i-après:

c

a

b

c

a

b

c

a

b

b

i

f

c

a

b

c

b

c

a

b

i

i

c

a

b

f

c

b

c

a

b

i

i

(42)

Par ontre,lagrille i-aprèsn'admetpasde dé ompositionniepardistan e.

a

b

a

b

a

b

a

b

a

a

a

a

a

a

a

a

b

b

b

b

b

b

b

b

i

Un résultat majeur, établi depuis plus de vingt ans, est que les graphes des

automates àpile sont lesgraphesde degréni et admettant une

dé omposi-tion nie par distan e.

Théorème 4.1.3. Muller et S hupp [MS85℄ Les graphes de transition des

automatesàpilesontlesgraphesdedegréni,a essiblesàpartird'ununique

sommet initial et de dé omposition nie.

Démonstration :

: nous montrons d'abord que le graphe de transition de tout automate à pileestungraphededegréetdedé ompositionnis.Soit

M = (S, Γ, Σ, s

0

, F, δ)

un automate àpile.

Pardénition, son graphede transition

G

M

a un unique sommetinitial

s

0

qui est ra ine de

G

M

.

Vérions que

G

M

etplus généralement

H

M

= {pAU

a

→ qV U | pA

→ qV ∈ δ ∧ AU ∈ Γ

a

⊥}

est un graphe de degré ni.

Le degré sortant de tout sommet

(pAU)

est égal au nombre de règles de domaine

pA

, don est borné par le nombre

|δ|

de règles. Vérions que le

Références

Documents relatifs

Par contre si le milieu est de dimension finie selon z, on peut très bien avoir des solutions en exp(z/ δ) qui croissent au fur et à mesure de la progression de l’onde (combinées à

Mais s'il faut avoir une sécurité aussi abso- lue que possible dans ses prix de revient, pour pouvoir, à l'avance aussi calculer ses prix de vente et faire des offres aux ache-

Celte question posée devant les cham- bres fédérales et le monde de l'horlogerie et de la bijouterie, par la requête de l'As- sociation des Orfèvres-Bijoutiers suisses, de

204,000,000 en 1908, ayant donc plus que doublé en quatre ans Le Gouvernement ne manque pas d'attirer l'attention du pays sur le fait que l'année dernière 140,000 citoyens

Société Anonyme — Directeur : F.-E. Machines d'occasion, tous systèmes. Elle ouvre des oomptes-oourants débiteurs et créditeurs. Elle lait des prêts sur hypothèques, sur cédilles

c) En s’appuyant sur ce qui précède, indiquer une construction géométrique du point w, a et θ étant connus.. Baccalauréat 1990 Page 2 sur 2 Adama Traoré

Faire une figure en prenant BC= 3cm, BP = 1cm et en plaçant (BC) horizontalement sur la feuille. c) Quelle est la nature des triangles RAQ et PAS ?.. b) Quel est le lieu

• Pour mesurer une résistance, l'ohm-mètre utilise son alimentation pour imposer un courant dans le dipôle étudié et compare (puisque c'est un voltmètre) la tension correspondante