Combinatoire des mots

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Construction de la suite de Prouhet-Thue-Morse.

La combinatoire des mots est une branche des mathématiques et de l'informatique théorique qui applique l'analyse combinatoire aux mots finis ou infinis. Cette branche s'est développée à partir de plusieurs branches des mathématiques : la théorie des nombres, la théorie des groupes, les probabilités et bien sûr la combinatoire. Elle a des liens avec divers thèmes informatiques, comme l'algorithmique du texte, la recherche de motifs, la compression de textes.

Définition[modifier | modifier le code]

La combinatoire des mots a pour objet d'étude les propriétés de mots finis ou mots infinis particuliers. Ceci est à comparer à la théorie des langages formels, qui s'intéresse aux ensembles de mots, en vue de leur représentation et leur analyse.

Pour une classe de mots, l'étude porte sur les caractérisations équivalentes, les propriétés combinatoires, le dénombrement, l'énumération systématique ou la génération aléatoire. On étudie aussi les algorithmes et leur efficacité pour la réalisation effective de ces opérations.

Applications[modifier | modifier le code]

La combinatoire des mots a des applications dans des domaines variés de l'informatique théorique, comme la théorie des automates et de la linguistique. Le développement du texte numérique et du traitement de texte a amené à d'importants développements de la combinatoire des mots. Elle est présente à la base de l'algorithmique du texte, du traitement automatique du langage naturel, du traitement de la parole et du bio-informatique.

Historique[modifier | modifier le code]

La combinatoire des mots remonte aux travaux d'Axel Thue sur les suites non-répétitives de symboles, au début du XXe siècle. Les principaux travaux, dans les années qui ont suivi, sont ceux de Marston Morse et de ses coauteurs sur la suite de Prouhet-Thue-Morse et les mots sturmiens. Une célèbre application de la combinatoire des mots est l'usage qui est fait d'une suite sans répétition dans la réponse négative à la conjecture de Burnside apportée par Pyotr Novikov (en) et Sergei Adjan (en).

C'est Marcel-Paul Schützenberger qui est le fondateur de la combinatoire des mots moderne. À partir de notes préparées par Jean-François Perrot, est issu le livre "Combinatorics on words", ouvrage collectif signé du nom de plume M. Lothaire, et paru en 1983. La combinatoire des mots se développa rapidement à partir de cette date.

Mots de Lyndon[modifier | modifier le code]

Article détaillé : mot de Lyndon.

Les mots de Lyndon, nommés ainsi d'après le mathématicien Roger Lyndon, sont les mots primitifs et minimaux dans leur classe de conjugaison. L'un des résultats de base est que tout mot admet une factorisation décroissante unique en mots de Lyndon (résultat attribué par erreur à Chen, Fox et Lyndon). Un autre résultat remarquable est que le produit, en ordre croissant, des mots de Lyndon dont la longueur divise un entier donné est un mot de de Bruijn.

Répétitions[modifier | modifier le code]

Articles détaillés : mot sans carré et motif inévitable.

La combinatoire des mots s'est notamment attachée à décrire les conditions dans lesquelles les répétitions apparaissent dans les mots (mots sans carré, entre autres), la construction ou la transformation des mots, par morphisme. Un cas plus général est couvert par la notion de motif inévitable ou son contraire, les motifs évitables. Par exemple, le « motif » (où et sont des symboles) dénote la présence, dans un mot, d'un facteur de la forme (où cette fois-ci, et sont des mots). Dire qu'un mot évite ce motif, c'est qu'il ne contient pas ce facteur. Dire qu'un motif est inévitable, c'est affirmer que tout mot assez long contient un facteur de la forme décrite par le motif. Le motif est inévitable, le motif est évitable, même sur deux lettres.

Complexité combinatoire d'un mot[modifier | modifier le code]

Le mot de Fibonacci, caractérisé par une droite de pente ou avec , le nombre d'or

Il existe plusieurs manières de cerner la complexité d'une suite infinie de symboles. Intuitivement, ces notions doivent indiquer à quel point une suite est « compliquée » ou « complexe », ou « aléatoire », ou « chaotique ». La complexité algorithmique est une mesure qui évalue combien elle est difficile à construire. Cette difficulté est mesurée par la taille du programme nécessaire pour la construire, ou par temps qu’il faut pour calculer son n-ième terme. La théorie algorithmique de l'information fondée par Kolmogorov,Solomonoff et Chaitin aborde ces problèmes. La complexité de Kolmogorov d’une suite est la taille du plus court programme sur une machine de Turing qui engendre cette suite. La notion est relié aussi à la compressibilité d’une séquence.

Une autre mesure, plus arithmétique ou combinatoire, est la complexité « en facteurs », en anglais « subword complexity », appelé aussi complexité combinatoire. Elle mesure le nombre de facteurs qu'un mot possède pour chaque longueur. Formellement, la fonction de complexité d'un mot fini ou infini est la fonction qui, pour chaque entier , compte le nombre de facteurs (ou blocs) de longueur dans ce mot. Pour un mot infini , un résultat dû à Ethan M. Coven et Gustav Hedlund dit que si pour un entier , alors le mot est ultimement périodique. Les mots infinis apériodiques de complexité minimale ont donc une fonction de complexité égale à . Ce sont les mots sturmiens. Le plus connu des mots sturmiens est le mot de Fibonacci. Des mesures voisines sont la complexité palindromique qui mesure le nombre de palindromes, ou la complexité arithmétique.

Le terme de « complexité combinatoire », en opposition à la complexité algorithmique, est assez récent : on le trouve par exemple chez Jean-Paul Allouche[1] ou Michel Rigo[2].

Article détaillé : complexité combinatoire d'un mot.

Mots automatiques[modifier | modifier le code]

Article détaillé : suite automatique.

Les mots automatiques sont des suites que l'on peut définir à l'aide d'automates finis. La suite de Prouhet-Thue-Morse est l'exemple paradigmatique de cette famille. Les pliages de papiers en sont un autre exemple.

Mots morphiques[modifier | modifier le code]

Article détaillé : mot morphique.

Un mot morphique est un mot infini obtenu par itération d'un morphisme, suivi de l'application d'un deuxième morphisme. En absence du deuxième morphisme, on parle de mot purement morphique. C'est une méthode très efficace et répandue de construction de mots infinie. Elle est « robuste » en ce sens qu'elle est stable par toute sorte d'opérations. Par exemple, le mot de Fibonacci infini est un mot purement morphique, la suite de Prouhet-Thue-Morse également. La suite caractéristique des carrés : 11001000010000001000... est morphique, mais n'est pas purement morphique.

Complexité abélienne[modifier | modifier le code]

Article détaillé : complexité abélienne d'un mot.

La complexité abélienne d'un mot fini ou infini est la fonction qui compte le nombre de facteurs de longueur donnée dans ce mot, à permutation de lettres près. C'est une autre mesure de la complexité combinatoire d'une suite.

Équations entre mots[modifier | modifier le code]

Article détaillé : Équation entre mots.

Une équation de mots ou une équation entre mots (en anglais word équation) est un couple de mots, usuellement écrit sous la forme d'une équation

.

Ici, et sont des mots composés lettres qui sont des constantes ou des variables. Les constantes sont écrits en minuscules, les variables en majuscules. Par exemple, l'équation

contient quatre occurrences de la variable , et des constantes et . Une solution d'une équation est un ensemble de mots sans variables, un pour chaque variable, tel que la substitution des mots aux variables rend les deux composantes de l’équation identiques. Par exemple, pour (et plus généralement pour avec , les deux côtés de l'équation deviennent égaux, à (et plus généralement à ).

Un célèbre théorème de Makanin[3],[4] dit qu'il est décidable si une équation de mots, et plus généralement un ensemble d'équations de mots, possède une solution. En cela, les équations de mots se distinguent des équations diophantiennes pour lesquels l'existence de solutions est indécidable par le théorème de Matiassevitch résolvant le dixième problème de Hilbert.

Un problème lié est la description de toutes les solutions d'une équation donnée, sous forme paramétrée en général. La première étude systématique dans cette direction est faite par Hmelevskii[5].

Récurrence[modifier | modifier le code]

Un mot infini est récurrent si tout facteur de apparaît une infinité de fois dans .

  • Le mot n'est pas récurrent.
  • Le mot de Champernowne binaire formé de la concaténation des développements binaires des entiers naturels est récurrent.
  • Un mot ultimement périodique et récurrent est périodique.

Un mot infini est uniformément récurrent ou à lacunes bornées si deux occurrences consécutives d'un facteur de sont à distance bornée. Plus précisément, pour tout facteur de , il existe une constante telle que deux occurrences consécutives de dans sont à distance au plus .

  • Le mot de Champernowne binaire n'est pas uniformément récurrent. En effet, deux occurrences consécutives du symbole peuvent être séparées par des séquences arbitrairement longues de .
  • Le mot de Fibonacci est uniformément récurrent. Par exemple, les occurrences du chiffre dans ce mot infini sont les éléments de la suite A001950 de l'OEIS, soit 2, 5, 7, 10, 13, 15, 18,... La distance entre deux consécutifs est donc au plus 3.
  • Le mot de Thue-Morse est uniformément récurrent.

Il y a un lien entre les mots uniformément récurrents et les ensembles syndétiques. Un ensemble d'entiers naturels est appelé syndétique s'il existe un entier tel que pour deux entiers consécutifs de , on ait . Un mot infini est donc uniformément récurrent si, pour tout facteur de , l'ensemble des débuts d'occurrence de dans est syndétique.

La fonction de récurrence d'un mot infini donne la valeur maximale des lacunes entre occurrences consécutives de mots d'une longueur donnée. Plus précisément, est le plus petit entier tel que tout facteur de de longueur soit facteur de tout facteur de longueur de , formellement On peut voir l'entier comme la largeur minimale d'une fenêtre que l'on glisse sur le mot et qui a la propriété que tout facteur de longueur figure toujours dans la section couverte par la fenêtre.

  • Pour le mot de Fibonacci, on a , et ; en effet, le facteur du mot de Fibonacci ne contient pas le facteur , mais tout facteur de longueur 6 contient les trois facteurs parce que n'est pas facteur du mot de Fibonacci.

Fonction de récurrence de la suite de Prouhet-Thue-Morse[modifier | modifier le code]

Pour le mot de Thue-Morse , on a (tout facteur de longueur 3 contient un et un ) et (le facteur ne contient pas ). En fait, la fonction de récurrence a été calculée par Morse et Hedlund, dès 1938[6]. Les premières valeurs sont données dans la table suivante :

Fonction de récurrence de la suite de Prouhet-Thue-Morse
1 2 3 4 5 6 7 8 9 10
3 9 11 21 22 41 42 43 44 81

C'est la suite A179867 de l'OEIS. La formule de récurrence est toute simple : pour , on a . Il en résulte la forme close suivante. Posons , avec . Une telle écriture est toujours possible pour . Alors .

Fonction de récurrence du mot infini de Fibonacci[modifier | modifier le code]

Cette fonction de récurrence a une expression un peu moins simple, et elle est connue depuis l'article de Morse et Hedlund de 1940. On a est l'entier tel que . Ici, les sont les nombres de Fibonacci avec .

Fonction de récurrence du mot infini de Fibonacci
1 2 3 4 5 6 7 8 9 10
3 6 10 11 17 18 19 28 29 30

C'est la suite A183545 de l'OEIS. Cette formule s'étend à tous les mots sturmiens.

Notes et références[modifier | modifier le code]

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Combinatorics on words » (voir la liste des auteurs).

  1. Jean-Paul Allouche, « Surveying some notions of complexity for finite and infinite sequences », Functions in number theory and their probabilistic aspects, Kyoto, Res. Inst. Math. Sci. (RIMS),‎ , p. 27-37 (Math Reviews MR3014836, lire en ligne).
  2. Michel Rigo, Formal Languages, Automata and Numeration Systems, vol. 1, John Wiley & Sons, , 336 p. (ISBN 9781848216150 et 1848216157).
  3. Makanin 1977.
  4. Diekert 2002.
  5. Hmelevskii 1976.
  6. Allouche & Shallit (2003), pages 328-331, et Morse & Hedlund (1938), pages 834-839.

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

Histoire
  • Jean Berstel et Dominique Perrin, « The origins of combinatorics on words », European Journal of Combinatorics, vol. 28,‎ , p. 996–1022 (lire en ligne).
  • Dominique Perrin, « Les débuts de la combinatoire des mots », séminaire EHESS,‎ (lire en ligne).
Articles de synthèse
  • Jean Berstel et Juhani Karhumäki, « Combinatorics on words - a tutorial », Bull. Eur. Assoc. Theor. Comput. Sci. (EATCS), vol. 79,‎ , p. 178-228 (lire en ligne).
  • Juhani Karhumäki, « Combinatorics on words: a new challenging topic », TUCS Technical Report, no 645,‎ (lire en ligne).
  • Christian Choffrut et Juhani Karhumäki, « Combinatorics of words », dans G. Rozenberg, A. Salomaa (éditeurs), Handbook of Formal Languages, vol. 1 : Word, Language, Grammar, Springer Verlag, (ISBN 978-3-540-60420-4, présentation en ligne), p. 329-438
  • Volker Diekert, « Makanin's Algorithm », dans M. Lothaire, Algebraic Combinatorics on Words, Cambridge University Press, coll. « Encyclopedia of Mathematics and its Applications » (no 90), , chap. 12, p. 387–442.
  • Klaus Ulrich Schulz, Word equations and related topics, Springer-Verlag, (ISBN 978-3-540-55124-9) — Actes du colloque IWWERT '90, Tübingen, Allemagne, 1-3 octobre 1990
Lothaire
Ouvrages et monographies
Article historique
  • G. S. Makanin, « The problem of solvability of equations in a free semigroup », Math. Sbornik (N.S.), vol. 103, no 2,‎ , p. 147-236, 319 (Math Reviews 0470107) — Article complet, en russe. Traduction anglaise : Math. USSR Sbornik 32 (1977)