• Aucun résultat trouvé

Le calcul s´equentiel de B¨uchi

N/A
N/A
Protected

Academic year: 2022

Partager "Le calcul s´equentiel de B¨uchi"

Copied!
32
0
0

Texte intégral

(1)

Le calcul s´equentiel de B¨uchi

Jean-Eric Pin

LIAFA, CNRS et Universit´e Paris 7 [email protected]

(2)

Le calcul s´equentiel de B¨uchi

A chaque lettre a ∈ A, on associe un symbole de relation unaire a. On associe aussi `a chaque mot u une structure de la forme Mu = Dom(u),(a)a∈A

o`u

Dom(u) = {0, . . . ,|u| −1} et

a = {i ∈ Dom(u) | u(i) = a}

Par exemple, si u = abbaab, alors

Dom(u) = {0,1, . . . ,5}, a = {0,3,4} et b = {1,2,5}.

(3)

Interpr´etation des variables

On utilisera deux autres symboles non logiques, <

et S, interpr´et´es comme l’ordre usuel et la relation successeur sur Dom(u) :

S(x, y) ssi y = x+ 1 Langage de l’ordre lin´eaire :

L< = {<} ∪ {a | a ∈ A}

Langage du successeur :

LS = {S} ∪ {a | a ∈ A}

(4)

Logique sur les mots

Soit ϕ un ´enonc´e. On dit qu’un mot u satisfait ϕ si Mu satisfait ϕ. On pose alors

L(ϕ) = {u ∈ A+ | u satisfait ϕ}

On note F O(<), MSO(<), (resp. F O(S),

MSO(S)) l’ensemble des formules du premier ordre et du second ordre monadique de signature

{<,(a)a∈A} (resp. {S,(a)a∈A}).

(5)

S versus <

La relation S peut ˆetre exprim´ee dans F O(<), et la relation < peut ˆetre exprim´ee dans MSO(S), mais pas dans F O(S).

Pour S(i, j), on a la formule :

(i < j) ∧ ∀k ((i < k) →((j = k)∨(j < k)))

Pour i < j, on a la formule

∃X Xj ∧ ¬Xi ∧[∀x ∀y ((Xx∧S(x, y)) → Xy)]

En particulier, MSO(S) = MSO(<).

(6)

Th´eor`eme de B¨uchi

Th´eor`eme (B¨uchi)

Un langage de A+ est d´efinissable par un ´enonc´e de MSO(<) ssi il est rationnel.

(1) Des automates aux formules. On code un automate par une formule du second ordre.

(2) Des formules aux automates. On interpr`ete toutes les formules (pas seulement les ´enonc´es) et on proc`ede par r´ecurrence sur la construction des formules.

(7)

Une structure pour toutes les formules

On fixe un ensemble fini V = {x1, . . . , xp} de

variables. Une V-structure est un mot sur l’alphabet BV = A× P(V)

u = (a1, V1)(a2, V2). . .(an, Vn)

tel que V1, V2, . . . , Vn soient des parties de V deux `a deux disjointes. Par exemple, si A = {a, b} et p = 6,

(a,∅)(b,{x1, x3})(a,{x2})(a,∅)

(b,{x4, x6})(b,∅)(a,{x5})

(8)

Interpr´etation des formules

Soit ϕ(x1, . . . , xr) une formule du premier ordre dont les variables libres sont x1, . . . , xr.

On dira que u satisfait ϕ(x1, . . . , xr) si u satisfait ϕ[ν] o`u ν est la valuation d´efinie par ν(xi) = j o`u j est l’unique position telle que xi ∈ Vj. Par exemple

(a,∅)(b,{x1, x3})(a,{x2})(a,∅)

(b,{x4, x6})(b,∅)(a,{x5}) satisfait ϕ(x1, . . . , x6) ssi abaabba satisfait

ϕ(2,3,2,5,7,5)

(9)

Premier ordre

Probl`eme

Quel est le pouvoir d’expression de F O(S)? de F O(<)?

(10)

F O(<)

Th´eor`eme (McNaughton)

Un langage L est d´efinissable dans F O(<) ssi il est sans-´etoile.

La preuve utilise le r´esultat suivant

Proposition

Si u ∼n v et un v, alors uun vv

(11)

Le probl`eme de la d´ecision pour F O(<)

Peut-on d´ecider si un langage rationnel donn´e est sans ´etoile ?

Un mono¨ıde fini M est ap´eriodique si, pour tout x ∈ M, il existe n tel que xn = xn+1.

Th´eor`eme (Sch¨utzenberger 1965)

Un langage est sans ´etoile ssi son mono¨ıde syntactique est ap´eriodique.

Preuve. Alg´ebrique, un chef d’œuvre !

(12)

F O(S). Compteurs

Soit x et y deux entiers. On dit que x est congru `a y au seuil t et on note

x ≡t y ssi min(x, t) = min(y, t)

Par exemple, les classes d’´equivalence de ≡4 sont {0}, {1}, {2}, {3}, {4,5,6,7, . . .}.

(13)

Facteurs

Si u et x sont deux mots, on note u

x

le nombre d’occurrences du facteur x dans u.

Par exemple,

abababa aba

= 3

puisque aba poss`ede 3 occurrences distinctes dans abababa : abababa, abababa, abababa.

(14)

Langages localement testables `a seuil

Pour tout entier k > 0, posons

F(x, r) = {u ∈ A+ | u

x

>r}

En particulier, F(x,1) = AxA. Un langage est localement testable `a seuil s’il s’´ecrit comme combinaison bool´eenne de langages de la forme

xA, Ax ou F(x, r) avec x ∈ A+ et r >0.

(15)

Une ´equivalence sur les mots

Pour k, t > 0, soit ≡k,t l’´equivalence sur A+ d´efinie par

u ≡k,t v ssi, pour |x| 6 k, u

x

≡ v

x

seuil t

Exemple abababab ≡2,3 abababa

Proposition

Pour tout k, t > 0, ≡k,t est une ´equivalence d’indice fini sur A+.

(16)

Une congruence sur les mots

Pour k, t > 0, et u, v ∈ A+ on pose u ∼k,t v ssi, (1) u et v ont les mˆemes pr´efixes de longueur < k, (2) u et v ont les mˆemes suffixes de longueur < k, (3) u ≡k,t v.

Exemple ababababa ∼2,3 abababa

Th´eor`eme

Pour tout k, t >0, ∼k,t est une congruence d’indice fini sur A+.

(17)

Une caract´erisation combinatoire

Proposition

Un langage est localement testable `a seuil ssi il est union de ∼k,t-classes pour un couple (k, t).

(1) xA est union de ∼|x|+1,1-classes : si u ∈ xA et u ∼|x|+1,1 v, alors v ∈ xA.

(2) Ax est union de ∼|x|+1,1-classes.

(3) F(x, r) est union de ∼|x|,r-classes : si

u ∈ F(x, r) et u ∼|x|,r v, alors v ∈ F(x, r).

(18)

Caract´erisation combinatoire (suite)

Si u ∈ A+, la ∼k,t-classe de u est

pk−1(u)A∩Ask−1(u) ∩ ( \

(x,r)∈E

F(x, r)\ [

(x,r)∈F

F(x, r))

o`u

E = {(x, r) | |x| 6 k, r 6 t et u ∈ F(x, r)}

F = {(x, r) | |x| 6 k, r 6 t et u /∈ F(x, r)}

(19)

Des langages aux formules

Proposition

Tout langage localement testable `a seuil est d´efinissable dans F O(S) et mˆeme dans BΣ2(S).

(1) min est d´efinissable dans Σ2(S) :

∀x ¬S(x,min)

(2) xA est d´efinissable dans Σ2(S). Par exemple, abA = L(ϕ) avec

ϕ = ∃min ∃y (∀x ¬S(x,min))

∧S(min, y)∧ amin∧by

(20)

Des langages aux formules (suite)

(3) Ax est d´efinissable dans Σ2(S).

(4) F(x, r) est d´efinissable dans Σ1(S). Par exemple, F(aba,2) = L(ϕ) avec

ϕ = ∃x1 ∃x2 ∃x3 ∃y1 ∃y2 ∃y3 ax1 ∧bx2 ∧ax3

ay1 ∧by2 ∧ay3 ∧ S(x1, x2) ∧S(x2, x3)∧ S(y1, y2)∧S(y2, y3)∧

¬(x1 = y1)

(21)

Des langages aux formules (fin)

Proposition

Si ϕ est une formule de F O(S), L(ϕ) est localement testable `a seuil.

Id´ee de la preuve. Soit n le rang de ϕ et soit N = 3n. On montre que si u ∼N,3N v, alors II une strat´egie gagnante pour le jeu Gn(u, v).

Donc L(ϕ) est union finie de ∼N,3N-classes et est localement testable `a seuil.

(22)

Jeux de Fra¨ıss´e-Ehrenfeucht

Soient u et v deux mots. Le jeu Gn(u, v) est un jeu

`a 2 joueurs, I et II. Chaque joueur poss`ede n jetons. Les joueurs jouent alternativement pendant n coups en appliquant `a chaque tour les r`egles suivantes :

(1) Le joueur I choisit l’un des mots (u ou v) et pose un jeton sur l’une des lettres de ce mot.

(2) Le joueur II pose `a son tour un jeton sur l’une des lettres du mot restant.

(23)

Le gagnant

Soit ik (resp. jk) la position marqu´ee sur u (resp. v) au cours du k-i`eme tour. Le joueur II gagne si, pour tout r, s 6 n,

(1) ir = is ⇔ jr = js

(2) S(ir, is) ⇔ S(jr, js) (3) air ⇔ ajr

Sinon, c’est le joueur I qui gagne.

On dit que II a une strat´egie gagnante s’il peut toujours gagner, quels que soient les choix de I.

(24)

Une notation pour les facteurs

Si u = a1a2· · ·an est un mot, et i, j ∈ N, avec i 6j, on pose

u[i, j] =













ai· · ·aj si 1 6i 6j 6 n a1· · ·aj si i < 16 j 6 n ai· · ·an si 1 6i 6n < j u si i < 1 et n < j 1 dans les autres cas

(25)

Une strat´egie gagnante

Proposition

Soit n > 0 et N = 3n. Si u ∼N,3N v, alors II une strat´egie gagnante pour le jeu Gn(u, v).

L’id´ee intuitive est que la position ir (resp. jr) choisie sur u (resp. sur v) au r-i`eme coup doit d´eterminer le segment u[ir −3n−r, ir+ 3n−r] (resp.

v[jr −3n−r, jr+ 3n−r]).

(26)

La strat´egie gagnante

Apr`es i coups, les jetons z1, . . . , zi ont ´et´e jou´es sur chaque mot. Pour chaque position m de u (resp. v) ayant un jeton, consid´erons le facteur de longueur 2.3n−i centr´e en m.

u[m−3n−i+ 1, m+ 3n−i]

Consid´erons l’union de tous ses intervalles : on obtient une union disjointe d’intervalles qui sont le support de facteurs de longueur >2.3n−i. On dira que ces facteurs disjoints sont les facteurs de niveau i de u. En particulier, pour i = n, ils sont de

(27)

La strat´egie gagnante (suite)

Montrons par r´ecurrence sur i que II peut toujours appliquer la strat´egie suivante : `a chaque tour i, II joue de fa¸con `a ce que les facteurs associ´es au jeton zi soient les mˆemes sur u et sur v et que la position relative des jetons dans l’un de ces facteurs soit aussi la mˆeme dans u et dans v.

Cette strat´egie est gagnante, puisque pour i = n, si u (resp. v) satisfait par exemple zp = zq + 1, les jetons zp et zq seront plac´es dans le mˆeme facteur de u (puisqu’ils sont de longueur au moins 2) et l’autre mot satisfera la mˆeme formule.

(28)

La strat´egie gagnante (suite)

Pour i = 0, il n’y a rien `a d´emontrer. Supposons le r´esultat acquis pour i. Alors I pose son jeton zi+1

sur l’un des mots, disons u. Si le facteur f = u[m−3n−i−1 + 1, m+ 3n−i−1]

est enti`erement contenu dans l’un des facteurs de u d´efinis au coup i, alors II n’a plus qu’`a jouer dans la mˆeme position relative du facteur de v

correspondant et la condition exig´ee sera bien satisfaite au niveau i+ 1.

(29)

La strat´egie gagnante (suite)

Si au contraire, f n’est pas enti`erement contenu dans l’un des facteurs de u d´efinis au coup i, il est n´ecessairement disjoint de tous les facteurs associ´es aux jetons z1, . . . , zi.

Pour conclure, il suffit de montrer que v contient un facteur ´egal `a f et disjoint des facteurs de niveau 6 i de v, car II pourra alors jouer au centre de ce facteur.

(30)

La strat´egie gagnante (fin)

Or la somme des longueurs des facteurs de niveau i est 62i.3n−i < 3n+1 et donc f a moins de 3n+1 occurrences dans les facteurs de niveau i.

Comme u ∼N,3N v et comme les facteurs de niveau i ont des positions similaires dans les deux mots, il y a bien au moins une occurrence de f dans v qui est disjointe des facteurs de niveau 6 i.

(31)

La logique F O(S)

Th´eor`eme (Thomas)

Pour un langage L, les conditions suivantes sont

´equivalentes :

(1) L est localement testable `a seuil, (2) L est d´efinissable dans BΣ2(S), (3) L est d´efinissable dans F O(S).

Il reste `a savoir si on peut d´ecider si un langage rationnel donn´e est localement testable `a seuil. . . La r´eponse est oui, mais fait appel `a la th´eorie des semigroupes.

(32)

Les hi´erarchies Σ

n

(<) et BΣ

n

(<)

Peut-on d´ecider si un langage rationnel donn´e est d´efinissable dans Σn(<) et BΣn(<)?

(1) Σ0(<) et Σ0(<) sont d´ecidables (assez facile) (2) BΣ1(<) est d´ecidable (I. Simon 1972)

(3) Σ2(<) est d´ecidable (Pin-Weil 1995) (4) BΣ2(<) est d´ecidable pour un alphabet `a

deux lettres (Straubing 1988)

(5) Σ3(<) est d´ecidable pour un alphabet `a deux lettres (Glasser-Schmidt 2001)

La d´ecidabilit´e de BΣ2(<) et au-del`a pour plus de deux lettres est un probl`eme ouvert. . .

Références

Documents relatifs

This condition will be unre- coverable if the problem program contains indicator coding and the B bit is set in the control field of the function packet

Montrons par r´ecurrence sur i que II peut toujours appliquer la strat´egie suivante : `a chaque tour i, II joue de fa¸con `a ce que les facteurs associ´es au jeton z i soient

Les expressions ci-dessus pouvaient enfin être employées pour désigner la façon dont un ouvrage était fait, ce qui nous ramène toujours à la notion d'art en tant qu'un des

developpes, et avec la participation du systeme des Nations Unies pour le Developpement en general et le PNUD en particulier. Le Groupe a ainsi retenu que la

[r]

3.13 Grains striés rouges : Grains ou parties de grains présentant des stries rouges dont la longueur est égale ou supérieure à la moitié‚ de celle du grain

Vous portez dans vos cœurs une Sans partager jamais... Car vous avez compris qu'aux champs

[r]