LIAFA, CNRS et Universit´e Paris VII
Jeux de Fra¨ıss´e-Ehrenfeucht
Jean-Eric Pin
LIAFA, CNRS et Universit´e Paris 7 [email protected]
18 octobre 2004
LIAFA, CNRS et Universit´e Paris VII
Plan
(1) Logique
(2) Logique sur les mots
(3) Jeux de Fra¨ıss´e-Ehrenfeucht
LIAFA, CNRS et Universit´e Paris VII
Premi`ere partie I
Logique
LIAFA, CNRS et Universit´e Paris VII
Un exemple de formule de logique
∃x∃y (x < y)∧ax∧by Interpr´etation sur un mot u :
Il existe deux entiers x < y tels que, dans u, la lettre en position x est un a et la lettre en position y est un b.
L’ensemble des mots v´erifiant la formule est
l’ensemble des mots contenant une occurrence de a et ult´erieurement une occurrence de b.
A∗aA∗bA∗
LIAFA, CNRS et Universit´e Paris VII
Un deuxi`eme exemple
∃x ∀y (x < y)∨(x = y)∧ax Interpr´etation ?
(x < y)∨(x = y) peut s’´ecrire x ≤ y
∃x ∀y x ≤ y peut s’´ecrire x = min L’ensemble des mots v´erifiant la formule est donc aA∗.
LIAFA, CNRS et Universit´e Paris VII
La logique du premier ordre
Symboles logiques :
• les connecteurs logiques : ∧ (et), ∨ (ou), ¬ (non), → (implique),
• le symbole d’´egalit´e =,
• les quantificateurs ∃ et ∀,
• des variables (x, y, z, ou x0, x1, x2, ... )
• des parenth`eses.
Symboles non logiques :
• Symboles de relations (<),
• Symboles de fonctions (min,max),
• Symboles de constantes (0, 1).
LIAFA, CNRS et Universit´e Paris VII
R`egles de construction
Exemple : L= { < , h,0}
• < est un symbole de relation binaire,
• h est un symbole de fonction `a deux variables
• 0 est une constante.
Termes
• Les variables
• Les symboles de constantes
• Si t1, t2, . . . , tn sont des termes et si f est un symbole de fonction n-aire, f(t1, t2, . . . , tn) est un terme.
LIAFA, CNRS et Universit´e Paris VII
Exemple de termes
Si L ne contient pas de symbole de fonction, les seuls termes sont les variables et les symboles de constantes.
Si L = {<, h,0} les expressions suivantes sont des termes :
x h(0,0) h(x, h(0, y)) h(h(x, y), h(x, z))
LIAFA, CNRS et Universit´e Paris VII
Formules atomiques
Ce sont les formules soit de la forme (t1 = t2) o`u t1
et t2 sont des termes, soit de la forme R(t1, . . . , tn)
o`u t1, . . . , tn sont des termes et o`u R est un symbole de relation n-aire de L.
(h(x, h(0, y)) = x) (h(0,0)< 0) (h(h(t, x), h(x, y))< h(z, x))
Note : on devrait ´ecrire <(t1, t2) au lieu de t1 < t2.
LIAFA, CNRS et Universit´e Paris VII
Formules du premier ordre
(1) Les formules atomiques
(2) Si (ϕi)1≤i≤n est une famille de formules, alors
^
1≤i≤n
ϕi et _
1≤i≤n
ϕi
sont des formules.
(3) Si ϕ et ψ sont des formules, alors ¬ϕ et (ϕ → ψ) sont des formules.
(4) Si ϕ est une formule et si x est une variable, alors (∃xϕ) et (∀xϕ) sont des formules.
LIAFA, CNRS et Universit´e Paris VII
Exemples de formules
Pour simplifier, on pose vrai= ^
i∈∅
ϕi et faux = _
i∈∅
ϕi
Les expressions suivantes sont des formules du premier ordre
(∃x (∀y ((y < h(z,0))∧(x < 0)))) (∀x (y = x))
On ´ecrira les formules pr´ec´edentes sous la forme
∃x ∀y (y < h(x,0))∧ (z < 0)
∀x y = x
LIAFA, CNRS et Universit´e Paris VII
Variables libres et variables li´ees
Certaines variables apparaissent apr`es un quantificateur (existentiel ou universel) : les
occurrences de ces variables sont li´ees. Les autres occurrences sont dites libres. Par exemple, dans la formule
∃x (y < h(x,0))∧ ∀y (z < y)
les occurrences x et y sont li´ees et les occurrences z et y sont libres.
On appelle ´enonc´e une formule dont toutes les variables sont li´ees.
LIAFA, CNRS et Universit´e Paris VII
D´ef. formelle des variables libres
L’ensemble F V(ϕ) des variables libres d’une formule ϕ est d´efini comme suit :
(1) Si ϕ est atomique, F V(ϕ) est l’ensemble des variables de ϕ,
(2) F V(¬ϕ) = F V(ϕ)
(3) F V(ϕ∧ψ) =F V(ϕ∨ψ) = F V(ϕ)∪F V(ψ) (4) F V(ϕ →ψ) = F V(ϕ)∪ F V(ψ)
(5) F V(∃xϕ) = F V(∀xϕ) = F V(ϕ)\ {x}
Toute variable qui a au moins une occurrence libre dans ϕ est libre.
LIAFA, CNRS et Universit´e Paris VII
S´emantique des formules
Une structure S sur L est donn´ee par un ensemble D, appel´e domaine et par une application d´efinie sur L et qui associe :
(1) `a chaque symbole de relation n-aire de L, une relation n-aire d´efinie sur D,
(2) `a chaque symbole de fonction `a n arguments f de L, une fonction `a n arguments d´efinie sur D,
(3) `a chaque symbole de constante c de L, un
´el´ement de D.
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables
Une valuation est une application ν de l’ensemble des variables dans l’ensemble D. On ´etend ν aux termes de L :
(1) Si c est un symbole de constante, on pose ν(c) = c,
(2) si f est un symbole de fonction `a n
arguments et si t1, . . . , tn sont des termes ν f(t1, . . . , tn)
= f(ν(t1), . . . , ν(tn))
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables
Si ν est une valuation et a un ´el´ement de D, on note ν
a x
la valuation ν0 d´efinie par
ν0(y) =
(ν(y) si y 6= x a si y = x
On d´efinit, pour toute formule ϕ et pour toute valuation ν, les expressions :
• la valuation ν v´erifie ϕ dans S
• S satisfait ϕ[ν] (not´e S |= ϕ[ν]) de la fa¸con suivante :
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
(1) S |= (t1 = t2)[ν] ssi ν(t1) = ν(t2)
(2) S |= R(t1, . . . , tn)[ν] ssi ν(t1), . . . , ν(tn)
∈ R
(3) S |= ¬ϕ[ν] ssi non S |= ϕ[ν]
(4) S |= (ϕ∧ψ)[ν] ssi S |= ϕ[ν] et ψ[ν]
(5) S |= (ϕ∨ψ)[ν] ssi S |= ϕ[ν] ou ψ[ν] (6) S |= (ϕ→ ψ)[ν] ssi non S |= ϕ[ν] ou S |=
ψ[ν]
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
(7) S |= (∃xϕ)[ν] ssi il existe a ∈ D tel que S |= ϕ[ν
a x
]
(8) S |= (∀xϕ)[ν] ssi pour tout a ∈ D, S |= ϕ[ν
a x
]
La v´eracit´e de l’expression “la valuation ν v´erifie ϕ dans S” ne d´epend que des valeurs prises par les variables libres de ϕ.
Si ϕ est un ´enonc´e, on dit que ϕ est v´erifi´e par S (ou que S satisfait ϕ), et l’on note S |= ϕ, si, pour toute valuation ν, S |= ϕ[ν].
LIAFA, CNRS et Universit´e Paris VII
Formules logiquement ´equivalentes
Deux formules ϕ et ψ sont dites logiquement
´equivalentes si, pour toute structure S sur L, de domaine non vide, on a S |= ϕ ssi S |= ψ.
L’´equivalence logique ne concerne que les structures de domaine non vide. Par exemple, les formules
∀x ϕ(x)∧ ∃y ψ(y) et
∀x ∃y (ϕ(x)∧ψ(y))
sont logiquement ´equivalentes mais ne sont pas
´equivalentes sur une structure de domaine vide...
LIAFA, CNRS et Universit´e Paris VII
Equivalence logique
On d´emontre en logique que les formules suivantes sont logiquement ´equivalentes :
(1) ϕ∧ψ et ¬(¬ϕ∨ ¬ψ)
(2) ϕ → ψ et ¬ϕ∨ψ
(3) ∀xϕ et ¬(∃x ¬ϕ)
(4) ϕ∨ψ et ψ∨ϕ
(5) ϕ∧ψ et ψ∧ϕ
(6) ϕ∧f aux et f aux (7) ϕ∨f aux et ϕ (6) ϕ∧vrai et ϕ (7) ϕ∨vrai et vrai
LIAFA, CNRS et Universit´e Paris VII
Forme normale disjonctive
Une formule est sous forme normale disjonctive si c’est une disjonction de conjonctions de formules atomiques ou de n´egations de formules atomiques :
∨i∈I ∧j∈Ji (ϕij ∨ ¬ψij)
Proposition
Toute formule sans quantificateur est logiquement
´equivalente `a une formule sans quantificateur sous forme normale disjonctive.
LIAFA, CNRS et Universit´e Paris VII
Forme pr´enexe
Une formule est sous forme pr´enexe si elle s’´ecrit sous la forme
ψ = Q1x1 Q2x2 . . . Qnxn ϕ
o`u les Qi sont des quantificateurs existentiels ou universels (∃ ou ∀) et ϕ est une formule sans quantificateur. La suite Q1x1 Q2x2 . . . Qnxn
s’appelle le pr´efixe de quantification de ψ.
Proposition
Toute formule est logiquement ´equivalente `a une formule sous forme pr´enexe.
LIAFA, CNRS et Universit´e Paris VII
Hi´erarchie et forme pr´enexe
Une formule de Σn est une formule sous forme pr´enexe dont le pr´efixe de quantification est une suite altern´ee de n blocs de ∃ et ∀ (´eventuellement vides) commen¸cant par un bloc de ∃.
Une formule de Πn est une formule sous forme pr´enexe dont le pr´efixe de quantification est une suite altern´ee de n blocs de ∃ et ∀ (´eventuellement vides) commen¸cant par un bloc de ∀.
On montre que toute disjonction ou conjonction finie de formules de Σn est logiquement ´equivalente
`a une formule de Σn.
LIAFA, CNRS et Universit´e Paris VII
La hi´erarchie Σ
n(1) Σ0 = Π0 = ensemble des formules sans quantificateurs.
(2) BΣn ensemble des combinaisons bool´eennes des formules de Σn
(3) Σn+1 : formules de la forme
∃x1. . .∃xn ϕ(x1, . . . , xn) avec ϕ∈ Πn
(4) Πn+1 : formules de la forme
∀x1. . .∀xn ϕ(x1, . . . , xn) avec ϕ∈ Σn
LIAFA, CNRS et Universit´e Paris VII
Quelques exemples
La formule
∃x1 ∃x2 ∃x3
| {z } bloc 1
∀x4 ∀x5
| {z } bloc 2
∃x6 ∃x7
| {z } bloc 3
ϕ
appartient `a Σ3 (et aussi `a tous les Σn tels que n ≥ 3). De mˆeme la formule
bloc 1|{z}
∀x4 ∀x5
| {z } bloc 2
∃x6 ∃x7
| {z } bloc 3
ϕ
appartient `a Σ3, et `a Π2, mais pas `a Σ2, car le premier bloc doit toujours ˆetre un bloc de quantificateurs existentiels.
LIAFA, CNRS et Universit´e Paris VII
Logique du second ordre
Les variables utilis´ees dans la logique du premier ordre (variables du premier ordre) s’interpr`etent comme des ´el´ements du domaine.
Dans la logique du second ordre, on utilise un deuxi`eme type de variables, appel´ees variables du second ordre, qui repr´esentent des relations. Ces variables sont not´ees traditionnellement par des lettres majuscules : X0, X1, etc..
LIAFA, CNRS et Universit´e Paris VII
Formules du second ordre
L’ensemble des termes de L est le mˆeme qu’au premier ordre. Les formules atomiques sont les formules soit de la forme
(t1 = t2)
o`u t1 et t2 sont des termes, soit de la forme R(t1, . . . , tn) ou X(t1, . . . , tn)
o`u t1, . . . , tn sont des termes, R est un symbole de relation n-aire de L et X est une variable
repr´esentant une relation n-aire.
LIAFA, CNRS et Universit´e Paris VII
R`egles de formation
(1) On part des formules atomiques
(2) Si ϕ et ψ sont des formules, il en est de mˆeme de
¬ϕ (ϕ∧ψ) (ϕ∨ψ) (ϕ→ ψ) (3) Si ϕ est une formule, si x est une variable et
si X est une variable de relation, alors les expressions
(∃xϕ) (∀xϕ) (∃Xϕ) (∀Xϕ) sont des formules.
LIAFA, CNRS et Universit´e Paris VII
Second ordre monadique
Dans le second ordre monadique, toutes les variables du second ordre sont des variables de relations unaires : elles s’interpr`etent donc comme des sous-ensembles du domaine.
∃ X (∀x Xx) ce que l’on ´ecrit aussi sous la forme
∃ X (∀x x ∈ X)
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables
Une valuation du second ordre est une application ν qui associe `a chaque variable un ´el´ement de D et `a chaque variable de relation n-aire une partie de Dn (i.e. une relation n-aire sur D).
Si ν est une valuation et R une partie de Dn, on note ν
R X
la valuation ν0 d´efinie par
ν0(x) = ν(x) si x est une variable du premier ordre ν0(Y) =
(ν(Y) si Y 6= X
R si Y = X
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
La notion d’interpr´etation, d´ej`a d´efinie pour le premier ordre, est compl´et´ee par les r`egles suivantes :
(9) S |= (X(t1, . . . , tn))[ν] ssi ν(t1), . . . , ν(tn)
∈ ν(X)
(10) S |= (∃Xϕ)[ν] ssi il existe R ⊆Dn tel que S |= ϕ[ν
R X
]
(11) S |= (∀xϕ)[ν] ssi pour tout R ⊆ Dn, S |= ϕ[ν
R X
]
LIAFA, CNRS et Universit´e Paris VII
Deuxi`eme partie II
Logique sur les mots
LIAFA, CNRS et Universit´e Paris VII
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}.
LIAFA, CNRS et Universit´e Paris VII
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}
LIAFA, CNRS et Universit´e Paris VII
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 F1(<), M F2(<), (resp. F1(S), M F2(S)) l’ensemble des formules du premier ordre et du second ordre monadique de signature {<,(a)a∈A} (resp. {S,(a)a∈A}).
LIAFA, CNRS et Universit´e Paris VII
S versus <
La relation S peut ˆetre exprim´ee dans F1(<), et la relation < peut ˆetre exprim´ee dans M F2(S), mais pas dans F1(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)]
LIAFA, CNRS et Universit´e Paris VII
Th´eor`eme de B¨uchi
Th´eor`eme (B¨uchi)
Un langage de A+ est d´efinissable par une formule de M F2(S) (resp. M F2(<)) si et seulement si il est rationnel.
Quel est le pouvoir d’expression de F1(S)? de F1(<)?
LIAFA, CNRS et Universit´e Paris VII
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, . . .}.
LIAFA, CNRS et Universit´e Paris VII
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.
LIAFA, CNRS et Universit´e Paris VII
Langages localement testables `a seuil
Pour tout entier k ≥ 0, posons F(x, r) = {u ∈ A+ |
u x
≥r}
En particulier, F(x,1) =A∗xA∗. Un langage est localement testable `a seuil s’il s’´ecrit comme combinaison bool´eenne de langages de la forme
xA∗, A∗x ou F(x, r) avec x ∈ A+ et r ≥0.
LIAFA, CNRS et Universit´e Paris VII
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| ≤ 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+.
LIAFA, CNRS et Universit´e Paris VII
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+.
LIAFA, CNRS et Universit´e Paris VII
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) A∗x 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).
LIAFA, CNRS et Universit´e Paris VII
Caracterisation combinatoire
⇐
Si u ∈ A+, la ∼k,t-classe de u est pk−1(u)A∗∩A∗sk−1(u) ∩
( \
(x,r)∈E
F(x, r)\ [
(x,r)∈F
F(x, r))
o`u
E = {(x, r) | |x| ≤ k, r ≤ t et u ∈ F(x, r)}
F = {(x, r) | |x| ≤ k, r ≤ t et u /∈ F(x, r)}
LIAFA, CNRS et Universit´e Paris VII
Des langages aux formules
Proposition
Tout langage localement testable `a seuil est d´efinissable dans F1(S) et mˆeme dans BΣ2(S).
(1) min est d´efinissable dans Σ2(S) :
∃min ∀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
LIAFA, CNRS et Universit´e Paris VII
Des langages aux formules
(3) A∗x est d´efinissable dans Σ2(S).
(4) F(x, r) est d´efinissable dans Σ1(S).
Corollaire
Soit L = {S,min,max} ∪ {a | a ∈ A}. Tout
langage localement testable `a seuil est d´efinissable dans BΣ1(L).
LIAFA, CNRS et Universit´e Paris VII
Des langages aux formules
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Σ1(L), (3) L est d´efinissable dans F1(L).
LIAFA, CNRS et Universit´e Paris VII
Deuxi`eme version
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 F1(S).
Comme F1(S) = F1(L), il reste `a prouver que si ϕ est une formule de F1(S), L(ϕ) est localement testable `a seuil.
LIAFA, CNRS et Universit´e Paris VII
Troisi`eme partie III
Jeux de Fra¨ıss´e-Ehrenfeucht
LIAFA, CNRS et Universit´e Paris VII
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})
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
Soit ϕ(x1, . . . , xr) une formule du premier ordre dont les variables libres ordre 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)
LIAFA, CNRS et Universit´e Paris VII
Equivalence ´el´ementaire
Le rang de quantification d’une formule est d´efini par r´ecurrence :
(1) r(ϕ) = 0 si ϕ est atomique, (2) r(¬ϕ) = r(ϕ),
(3) r(ϕ∨ψ) = max{r(ϕ), r(ψ)}, (4) r(∃x ϕ) = r(ϕ) + 1.
On dit que deux mots sont (´el´ementairement) n-´equivalents (notation u ∼n v) s’ils satisfont les mˆemes formules de rang ≤n.
LIAFA, CNRS et Universit´e Paris VII
Equivalence ´el´ementaire
On consid`ere un langage logique ne contenant aucun symbole de fonction et un nombre fini de symboles de relations et de constantes. (par exemple, LS = {S} ∪ {a |a ∈ A})
Proposition
Etant donn´e un nombre fini de variables, il n’y a, `a
´equivalence logique pr`es, qu’un nombre fini de formules de rang ≤r.
LIAFA, CNRS et Universit´e Paris VII
D´emonstration
Les formules atomiques sont de la forme u = v ou R(u1, . . . , un) o`u R est un symbole de relation. Il y en a donc un nombre fini. Il y a donc aussi un
nombre fini de combinaisons bool´eennes de formules atomiques, ce qui prouve le r´esultat pour r = 0.
Ensuite, les formules de rang r sont combinaisons bool´eennes de formules ϕ ou ∃x ϕ, o`u ϕ est de rang < r. On en d´eduit par r´ecurrence qu’`a
´equivalence logique pr`es, il n’y a qu’un nombre fini de formules de rang r.
LIAFA, CNRS et Universit´e Paris VII
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.
LIAFA, CNRS et Universit´e Paris VII
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 ≤ 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.
LIAFA, CNRS et Universit´e Paris VII
Le th´eor`eme de Fra¨ıss´e-Ehrenfeucht
Th´eor`eme
Deux mots u et v sont n-´equivalents si et seulement si le joueur II a une strat´egie gagnante pour le jeu Gn(u, v).
⇒ : par r´ecurrence sur n.
Si n = 0, le joueur II a gagn´e. On suppose le r´esultat vrai pour n−1. Le joueur I joue un coup i1, disons sur u. Posons
ψ(x) = _
u|=ϕ(i1) r(ϕ)<n
ϕ(x)∧ ^
u6|=ϕ(i1) r(ϕ)<n
¬ϕ(x)
LIAFA, CNRS et Universit´e Paris VII
Preuve (suite)
Alors u |= ∃xψ(x) et puisque le rang de ∃xψ(x) est
≤ n, on a aussi v |= ∃xψ(x).
Il existe donc une position j1 dans v telle que, si r(ϕ) < n,
u |= ϕ(i1) ⇔ v |= ϕ(j1)
Maintenant, les mots (u, i1) et (v, j1) de B1+ sont (n−1)-´equivalents. Par r´ecurrence, II a une strat´egie gagnante.
LIAFA, CNRS et Universit´e Paris VII
Le th´eor`eme d’Ehrenfeucht-Fra¨ıss´e
Th´eor`eme
Deux mots u et v sont n-´equivalents si et seulement si le joueur II a une strat´egie gagnante pour le jeu Gn(u, v).
⇐ : par r´ecurrence sur n. Trivial si n= 0. On suppose le r´esultat vrai pour n−1. On montre que si r(ϕ) < n, alors
u |= ∃xϕ(x) ssi v |= ∃xϕ(x)
LIAFA, CNRS et Universit´e Paris VII
Fin de la preuve
Si u |= ∃xϕ(x), il existe i1 tel que u |= ϕ(i1). Si I joue i1 sur u, II joue j1 sur v en suivant sa
strat´egie. Donc v |= ϕ(j1) et v |= ∃xϕ(x).
Si r(ψ) ≤ n, ψ est combinaison bool´eenne de formules de la forme ∃xϕ(x), avec r(ϕ) < n. Donc
u |= ψ ssi v |= ψ
Par cons´equent u et v sont n-´equivalents.
LIAFA, CNRS et Universit´e Paris VII
Des formules aux langages
Si u = a1a2· · ·an est un mot, et i, j ∈ Z, avec i ≤j, on pose
u[i, j] =
ai· · ·aj si 1 ≤i ≤j ≤ n a1· · ·aj si i < 1≤ j ≤ n ai· · ·an si 1 ≤i ≤n < j u si i < 1 et n < j 1 dans les autres cas
LIAFA, CNRS et Universit´e Paris VII
La strat´egie gagnante
Proposition
Soit n ≥ 0 et N = 3n. Si u ∼N,3N v, alors u et v sont n-´equivalents.
Il suffit de trouver une strat´egie gagnante pour II dans 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]).
LIAFA, CNRS et Universit´e Paris VII
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
longueur ≥ 2.
LIAFA, CNRS et Universit´e Paris VII
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 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.
LIAFA, CNRS et Universit´e Paris VII
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.
LIAFA, CNRS et Universit´e Paris VII
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
≤ i de v, car II pourra alors jouer au centre de ce facteur.
LIAFA, CNRS et Universit´e Paris VII
La strat´egie gagnante (fin)
Or la somme des longueurs des facteurs de niveau i est ≤ 2i.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 ≤ i.
LIAFA, CNRS et Universit´e Paris VII
Conclusion de la preuve
Proposition
Si ϕ est une formule de F1(S), L(ϕ) est localement testable `a seuil.
En effet, si n est le rang de quantification de ϕ, L(ϕ) est union finie de ∼N,3N-classes et donc est localement testable `a seuil.
LIAFA, CNRS et Universit´e Paris VII
La logique F
1(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 F1(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.
LIAFA, CNRS et Universit´e Paris VII
F
1(<)
Th´eor`eme (McNaughton)
Un langage L est d´efinissable dans F1(L<) ssi il est sans-´etoile.
La preuve utilise le r´esultat suivant
Proposition
Si u ∼n v et u0 ∼n v0, alors uu0 ∼n vv0
LIAFA, CNRS et Universit´e Paris VII
Le probl`eme de la d´ecision pour F
1(<)
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.
LIAFA, CNRS et Universit´e Paris VII
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. . .