Mot infini

En mathématiques, notamment en combinatoire, en informatique théorique, en théorie des automates et en combinatoire des mots, un mot infini sur un alphabet A {\displaystyle A} , est une suite infinie x = ( a 0 , a 1 , , a n , ) {\displaystyle x=(a_{0},a_{1},\ldots ,a_{n},\ldots )} d'éléments pris dans un ensemble A {\displaystyle A} , en général fini. Un mot infini est plutôt noté, comme pour les mots finis, sous la forme

x = a 0 a 1 a n {\displaystyle x=a_{0}a_{1}\cdots a_{n}\cdots }

Les mots infinis ont de nombreux usages. Ce sont :

  • les suites caractéristiques, à éléments 0 {\displaystyle 0} ou 1 {\displaystyle 1} , d'ensembles d'entiers naturels ;
  • les représentations de partitions de l'ensemble des entiers naturels ;
  • les représentations des développements de nombres réels dans une base donnée ;
  • les trajectoires dans un système dynamique symbolique ;
  • les mots infinis reconnus par des automates ;
  • les évolutions de programmes dans la vérification de modèles.

Les exemples de mots infinis les plus connus sont le mot de Fibonacci, et plus généralement les mots sturmiens, et la suite de Prouhet-Thue-Morse et plus généralement les suites automatiques.

Définition et notations

Un mot infini sur un alphabet A {\displaystyle A} est une suite infinie

x = a 0 a 1 a n {\displaystyle x=a_{0}a_{1}\cdots a_{n}\cdots }

composée d'éléments de A {\displaystyle A} .

On peut donc voir un mot infini comme une suite indexée par les entiers naturels — parfois la numérotation commence à 1 — ou comme une fonction des entiers naturels dans l'alphabet A {\displaystyle A} . On peut aussi voir le mot comme un produit infini de lettres, et on rencontre alors la notation

x = n = 0 a n {\displaystyle x=\prod _{n=0}^{\infty }a_{n}} .

Cette notation a l'avantage de s'étendre au produit infini de mots au lieu du produit infini de lettres.

On note A N {\displaystyle A^{\mathbb {N} }} ou A ω {\displaystyle A^{\omega }} l'ensemble des mots infinis sur A {\displaystyle A} . On peut considérer aussi des mots infinis bilatères, indexés par Z {\displaystyle \mathbb {Z} } au lieu de N {\displaystyle \mathbb {N} } .

L'opérateur ω {\displaystyle \omega } de répétition infinie est employé pour dénoter ou construire des mots infinis. Ainsi,

  • a ω {\displaystyle a^{\omega }} est le mot infini composé uniquement de lettres a {\displaystyle a} ;
  • X ω {\displaystyle X^{\omega }} , où X {\displaystyle X} est un ensemble de mots finis, est l'ensemble des mots infinis de la forme x 0 x 1 x n {\displaystyle x_{0}x_{1}\cdots x_{n}\cdots } , où chaque x i {\displaystyle x_{i}} est dans X {\displaystyle X} .

Le produit de concaténation de deux mots infinis n'existe pas, mais le produit d'un mot fini u {\displaystyle u} et d'un mot infini x {\displaystyle x} , noté u x {\displaystyle ux} , est le mot formé en ajoutant le mot x {\displaystyle x} après le mot u {\displaystyle u} . Ainsi :

  • b a ω {\displaystyle ba^{\omega }} est le mot infini composé de la lettre b {\displaystyle b} suivie uniquement de lettres a {\displaystyle a} ;
  • b a ω {\displaystyle b^{\star }a^{\omega }} est l'ensemble des mots infinis commençant par un nombre fini de lettres b {\displaystyle b} suivies de lettres a {\displaystyle a} ;
  • { a , b } a ω {\displaystyle \{a,b\}^{\star }a^{\omega }} est l’ensemble des mots infinis contenant un nombre fini d'occurrences de la lettre b {\displaystyle b} .

Comme exemple de l'usage des notations, on considère la suite caractéristique des carrés. C'est un mot infini w = c 0 c 1 c n {\displaystyle w=c_{0}c_{1}\cdots c_{n}\cdots } , avec c n = 1 {\displaystyle c_{n}=1} si et seulement si n {\displaystyle n} est un carré, et c n = 0 {\displaystyle c_{n}=0} sinon. Cette définition fonctionnelle fournit le produit

c = 11001000010000001 = n = 0 1 ( 00 ) n {\displaystyle c=11001000010000001\cdots =\prod _{n=0}^{\infty }1(00)^{n}} .

L'ensemble des mots finis ou infinis est noté A = A A ω {\displaystyle A^{\infty }=A^{\star }\cup A^{\omega }} .

Topologie

L'ensemble A ω {\displaystyle A^{\omega }} est doté d'une distance définie comme suit :

Pour deux mots x {\displaystyle x} et y {\displaystyle y} de A ω {\displaystyle A^{\omega }} , on note ( x , y ) {\displaystyle \ell (x,y)} la longueur du plus long préfixe commun de x {\displaystyle x} et y {\displaystyle y} . C'est un entier naturel ou + {\displaystyle +\infty } . La distance d ( x , y ) {\displaystyle d(x,y)} est le nombre

d ( x , y ) = 2 ( x , y ) {\displaystyle d(x,y)=2^{-\ell (x,y)}} .

Il est clair que d ( x , y ) = 0 {\displaystyle d(x,y)=0} si et seulement si x = y {\displaystyle x=y} , et aussi que d ( x , y ) = d ( y , x ) {\displaystyle d(x,y)=d(y,x)} . L'inégalité triangulaire traditionnelle d'une distance est renforcé par l'inégalité

d ( x , y ) max ( d ( x , z ) , d ( z , y ) ) {\displaystyle d(x,y)\leq \max(d(x,z),d(z,y))}

pour tout mot infini z {\displaystyle z} , qui en fait une distance ultramétrique. Cette inégalité revient en effet à

( x , y ) min ( ( x , z ) , ( z , y ) ) {\displaystyle \ell (x,y)\geq \min(\ell (x,z),\ell (z,y))}

et pour se convaincre que cette formule est valide, supposons que ( x , z ) > ( x , y ) {\displaystyle \ell (x,z)>\ell (x,y)} . Alors les mots x {\displaystyle x} et z {\displaystyle z} coïncident sur le préfixe commun entre x {\displaystyle x} et y {\displaystyle y} mais pas au-delà, donc ( x , y ) = ( z , y ) {\displaystyle \ell (x,y)=\ell (z,y)} .

La notion de convergence est usuelle : une suite ( x n ) {\displaystyle (x_{n})} de mots infinis converge vers un mot infini x {\displaystyle x} si d ( x n , x ) 0 {\displaystyle d(x_{n},x)\to 0} quand n {\displaystyle n\to \infty } . Par exemple, la suite de mots infinis x n = a n b n a ω {\displaystyle x_{n}=a^{n}b^{n}a^{\omega }} tend vers a ω {\displaystyle a^{\omega }} .

La topologie ainsi définie sur l'ensemble A ω {\displaystyle A^{\omega }} est la topologie produit de la topologie discrète sur l'alphabet A {\displaystyle A} . L'espace est un espace de Cantor, c'est-à-dire un espace compact totalement disconnecté, sans point isolé.

On étend comme suit la topologie aux mot finis et infinis. On ajoute à l'alphabet A {\displaystyle A} une lettre supplémentaire $ {\displaystyle \$} , et on identifie A {\displaystyle A^{\star }} à A $ ω {\displaystyle A^{\star }\$^{\omega }} . Ainsi, une suite ( x n ) {\displaystyle (x_{n})} de mots finis converge vers un mot infini x {\displaystyle x} si la longueur du plus long préfixe commun entre x n {\displaystyle x_{n}} et x {\displaystyle x} tend vers l'infini avec n {\displaystyle n} . On écrit alors

x = lim n x n {\displaystyle x=\lim _{n\to \infty }x_{n}} .

Par exemple, la suite de mot finis x n = a n b n {\displaystyle x_{n}=a^{n}b^{n}} tend vers a ω {\displaystyle a^{\omega }} .

Un cas particulier de cette situation se présente lorsque les mots x n {\displaystyle x_{n}} sont chacun préfixe du mot suivant. Pourvu que la suite des longueurs tende vers l'infini, la limite x {\displaystyle x} est alors le mot infini dont les x n {\displaystyle x_{n}} sont des préfixes.

Mots morphiques

Article détaillé : mot morphique.

Un morphisme f : A A {\displaystyle f:A^{*}\to A^{*}} est prolongeable pour une lettre a {\displaystyle a} de A {\displaystyle A} si a {\displaystyle a} est un préfixe propre de f ( a ) {\displaystyle f(a)} , et si de plus, la suite des longueurs de itérés f n ( a ) {\displaystyle f^{n}(a)} tend vers l'infini lorsque n {\displaystyle n} tend vers l'infini.

Si f : A A {\displaystyle f:A^{*}\to A^{*}} est prolongeable en a {\displaystyle a} , il existe un mot non vide u {\displaystyle u} tel que f ( a ) = a u {\displaystyle f(a)=au} . En itérant, on obtient l'expression :

f n ( a ) = a u f ( u ) f n 1 ( u ) {\displaystyle f^{n}(a)=auf(u)\cdots f^{n-1}(u)}

La suite de ces mots converge vers un mot infini noté f ω ( a ) {\displaystyle f^{\omega }(a)}  :

f ω ( a ) = lim n f n ( a ) {\displaystyle f^{\omega }(a)=\lim _{n\to \infty }f^{n}(a)}

Ce mot est le mot infini engendré par f {\displaystyle f} en a {\displaystyle a} . Un mot infini x {\displaystyle x} sur un alphabet A {\displaystyle A} est purement morphique s'il existe un morphisme f : A A {\displaystyle f:A^{*}\to A^{*}} et une lettre a {\displaystyle a} dans A {\displaystyle A} tel que

x = f ω ( a ) {\displaystyle x=f^{\omega }(a)}

Un mot infini y {\displaystyle y} sur un alphabet B {\displaystyle B} est morphique s'il est l'image, par un morphisme littéral (lettre à lettre), d'un mot purement morphique.

Exemples

— Le morphisme de Thue-Morse μ {\displaystyle \mu } est défini par

a a b b b a {\displaystyle {\begin{array}{rcl}a&\mapsto &ab\\b&\mapsto &ba\end{array}}} .

Il est prolongeable à la fois en la lettre a {\displaystyle a} et en la lettre b {\displaystyle b} . Pour la lettre a {\displaystyle a} , on obtient le mot infini de Thue-Morse :

a b b a b a a b b a a b a b b a b a a b a b b a a b b a b a a b {\displaystyle abbabaabbaababbabaababbaabbabaab\cdots }

et pour la lettre a {\displaystyle a} , on obtient le mot opposé

b a a b a b b a a b b a b a a b a b b a b a a b b a a b a b b a {\displaystyle baababbaabbabaababbabaabbaababba\cdots }

— Le morphisme de Fibonacci est défini par

a a b b a {\displaystyle {\begin{array}{rcl}a&\mapsto &ab\\b&\mapsto &a\end{array}}} .

Il est prolongeable en a {\displaystyle a}  ; en itérant, on obtient le mot infini :

a b a a b a b a a b a a b a b a a b a b a {\displaystyle abaababaabaababaababa\cdots } .

Ces deux mots infinis sont donc purement morphiques.

— Le morphisme :

a a 1 1 001 0 0 {\displaystyle {\begin{array}{rcl}a&\mapsto &a1\\1&\mapsto &001\\0&\mapsto &0\end{array}}}

est prolongeable en a {\displaystyle a} . En itérant, on obtient le mot infini :

a 1001000010000001000000001 {\displaystyle a1001000010000001000000001\cdots }

qui, à la première lettre près, est la suite caractéristique des carrés (0, 1, 4, 9, 16, etc). En lui appliquant le morphisme littéral qui identifie a {\displaystyle a} et 1 {\displaystyle 1} , on obtient exactement la suite caractéristique, qui est donc un mot morphique.

— Lorsque le morphisme qui est itéré est uniforme, c'est-à-dire lorsque les images des lettres ont toutes la même longueur (par exemple, le morphisme de Thue-Morse est uniforme), la suite engendrée est une suite automatique.

Décalage

Article détaillé : dynamique symbolique.

L'opérateur de décalage σ {\displaystyle \sigma } est défini, pour tout mot infini

x = a 0 a 1 a n {\displaystyle x=a_{0}a_{1}\cdots a_{n}\cdots } ,

par

σ ( x ) = a 1 a n {\displaystyle \sigma (x)=a_{1}\cdots a_{n}\cdots } .

La même définition vaut pour les mots infinis bilatères. Dans ce cas, σ {\displaystyle \sigma } est une bijection. L'opérateur de décalage est une fonction continue.

Un système dynamique symbolique sur l'alphabet A {\displaystyle A} est un ensemble S {\displaystyle S} non vide de mots infinis sur A {\displaystyle A} qui est :

  1. fermé pour l’opérateur de décalage σ {\displaystyle \sigma }  ;
  2. fermé pour la topologie.

La même définition vaut pour les mots infinis bilatères.

Ensemble rationnel de mots infinis

Article détaillé : automate sur les mots infinis.

Un ensemble rationnel (on dit aussi langage rationnel ou ω-langage rationnel) de mots infinis sur un alphabet A {\displaystyle A} est une union finie d'ensembles de la forme

K M ω {\displaystyle KM^{\omega }}

K A {\displaystyle K\subset A^{*}} et M A + {\displaystyle M\subset A^{+}} sont des langages rationnels sur A {\displaystyle A} . La famille des ensembles rationnels de mots infinis est fermée par union, et par produit à gauche par un langage rationnel sur A {\displaystyle A} .

Exemples :

  • Le langage a b ω {\displaystyle a^{*}b^{\omega }} des mots sur a {\displaystyle a} et b {\displaystyle b} qui ont un nombre fini de a {\displaystyle a} est rationnel.
  • Le langage ( b a ) ω {\displaystyle (b^{*}a)^{\omega }} des mots sur a {\displaystyle a} et b {\displaystyle b} qui contiennent une infinité de a {\displaystyle a} est rationnel.

Bibliographie

  • (en) Dominique Perrin et Jean Éric Pin, Infinite Words : Automata, Semigroups, Logic and Games, Amsterdam/Boston, Academic Press, , 538 p. (ISBN 978-0-12-532111-2, lire en ligne)
  • (en) Samuel Eilenberg, Automata, Languages and Machines, Vol. A, New York, Academic Press, coll. « Pure and Applied Mathematics » (no 58), , xvi+451 (ISBN 978-0-12-234001-7)
  • (en) Erich Grädel, Wolfgang Thomas et Thomas Wilke (éditeurs), Automata, Logics, and Infinite Games : A Guide to Current Research, Springer-Verlag, coll. « Lecture Notes in Computer Science » (no 2 500), , viii+385 (ISBN 978-3-540-00388-5, lire en ligne).
  • icône décorative Portail des mathématiques
  • icône décorative Portail de l'informatique théorique