- Transduction rationnelle
-
En informatique théorique, en linguistique, en théorie des automates et en théorie des langages, une transduction rationnelle est une transformation de mots et de langages définie par un transducteur fini ou au moyen d'une relation rationnelle.
Les transductions rationnelles ont été introduites et étudiées par C. C. Elgot et J. E. Mezei[1], par Marcel-Paul Schützenberger et Maurice Nivat, et employées notamment par Seymour Ginsburg (en) et Sheila Greibach (en) dans l'étude des langages algébriques.
Sommaire
Définition
Une relation rationnelle sur deux alphabets A et B est une partie rationnelle du monoïde produit . En d'autres termes, c'est un élément de la plus petite famille de parties de contenant la relation vide, les singletons, et fermées par union, produit, et l'opération étoile, c'est-à-dire passage au sous-monoïde engendré.
- Le produit de deux éléments (x,y) et (x',y') de est le couple (xx',yy'), le produit de deux parties R et R' de est l'ensemble de
- L' étoile d'une partie R de est la partie , où Rn est le produit de n facteurs égaux à R.
Une transduction rationnelle de A * vers B * est une application de A * dans l'ensemble des parties de B * dont le graphe est une relation rationnelle[2]. Plus formellement, est une transduction rationnelle si est une relation rationnelle; réciproquement, si est une relation rationnelle, la transduction de A * vers B * définie par est une transduction rationnelle.
Certaines propriétés s'expriment plus simplement en termes de relation rationnelle, d'autre en termes de transduction rationnelle.
Transduction et transducteur
La fonction réalisée par un transducteur fini est une transduction rationnelle. Réciproquement, pour toute transduction rationnelle, il existe un transducteur fini qui la réalise.
Propriétés
- Composition: Si et sont des transductions rationnelles, la transduction composée définie par
est une transduction rationnelle. - Inverse :Si est une tranduction rationnelle, la transduction inverse définie par est rationnelle.
- Représentation par morphisme: Pour toute transduction rationnelle , il existe un alphabet C, deux morphismes et et un langage rationnel tels que
pour tout . - Préservation: L'image d'un langage rationnel 'd'un langage alégbrique) par une transduction rationnelle est un langage rationnel (un langage algébrique).
Exemples de transductions rationnelles
- Un morphisme est une transduction rationnelle
- Un morphisme inverse est une transduction rationnelle
- L'intersection avec un langage rationnel est une transduction rationnelle
- La transduction qui, à un mot de x, associe l'ensemble de ses préfixes, resp. suffixes, facteurs, sous-mots, est une transduction rationnelle.
Cône rationnel
Un cône rationnel, est une famille de langages fermée par transduction rationnelle. D'après la propriété de représentation, il est équivalent de demander qu'une famille de langages est fermée par morphisme, morphisme inverse et intersection avec un langage rationnel.
Un cône rationnel est appelé full trio en anglais. La raison est qu'un cône est fermé par un « trio » d'opérations et que le morphisme peut être effaçant, ce que les américains notent par l'adjectif full.
Un cône fidèle est une famille de langages fermée par morphisme non effaçant, morphisme inverse et intersection avec un langage rationnel. C'est ce qui est appelé trio en anglais.
Les langages rationnels, les langages algébriques, mais aussi de nombres sous-familles des langages algébriques, comme les langages linéaires, les langages à un compteur, les langages quasi-rationnels forment des cônes rationnels. Les langages context-sensitifs forment un cône fidèle.Un cône rationnel est principal s'il existe un langage (un générateur) tel que tout langage du cône est image de ce générateur par une transduction rationnelle. Le théorème de Chomsky-Schützenberger dit, dans une version un peu renforcée, que le cône des langages algébriques est principal, et que tout langage de Dyck sur au moins deux paires de parenthèses en est un générateur.
Notes
- Elgot et Mezei (1965)
- Il y a là un abus de notation: on écrit alors que l'on devrait écrire
Références
- Jacques Sakarovitch, Éléments de théorie des automates, Vuibert, 2003 (ISBN 978-2-7117-4807-5).
Traduction anglaise avec corrections: Elements of Automata Theory, Cambridge University Press 2009, (ISBN 9780521844253)
- (en) C. C. Elgot et J. E. Mezei, « On relations defined by generalized finite automata », dans IBM J. Res. and Develop., vol. 9, 1965, p. 47-68
- (en) Seymour Ginsburg, Algebraic and automata theoretic properties of formal languages, North-Holland, 1975 (ISBN 0-7204-2506-9)
- (en) Jean Berstel et Luc Boasson, « Context-free Languages », dans Jan van Leeuwen (éditeurs), Handbook of Theoretical Computer Science, vol. B : : Formal Models and Semantics, Elsevier, 1990 (ISBN 978-0444880741)
Liens internes
Wikimedia Foundation. 2010.