b. Isomorphismes de codes. --- Au lieu de , il revient au même de considérer l'équation , où (ce qui est une notation abrégée pour dire que est une bijection de dans définie par pour ). Par facilité de langage, on appellera isomorphismes de codes les applications telles que . Ce terme rappelle que; et aussi que, désignant l'alphabet (les générateurs) de , et sont appelés des codes sur , car, pour y quelconque de , il existe au plus un ensemble d'indices tels que , et de même pour . En fait, c'est surtout à l'étude des isomorphismes de code que seront consacrées la présente Note et la suivante.
c. Définitions d' isomorphismes de codes particuliers par donnée de relations. --- et désignant les éléments neutres respectivement de et de, il va de soi implicitement pour tout que l'on a, avec (d'où, d'ailleurs, une solution triviale pour et pour, avec ). Ceci étant, chaque isomorphisme de codes particulier pourra être défini par la donnée d'un ensemble de relations du type , à condition que et soient des codes et que la correspondance soit bijective. En effet, est implicitement défini par , l'est par les symboles utilisés pour noter les et ; et l'on peut interpréter les relations comme des correspondances .
d. Vérification qu'un ensemble de mots donnés est un code. --- Plus loin, on invoquera souvent la propriété suivante : Si et désignent respectivement un code et un préfix-code droit sur , et si est un symbole (générateur de ) ne figurant pas dans ni dans , alors, l'ensemble est un code. De même, en remplaçant par un préfix-code gauche , l'ensemble est un code. Rappelons que tout préfix-code droit est par définition () tel que, si, et si, avec , on a , alors, (tandis que pour les préfix-codes gauches, c'est qui impose ).
e. Épimorphismes de codes. --- On parlera d' épimorphisme de codes dans le cas de relations, où est bien un code , mais où est astreint seulement à ne pas contenir d'autres mots que ceux d'un code . MACHINES DE TURING RéVERSIBLES. --- Soit une machine de Turing MT dont et sont les ensembles d'états et de symboles, et les déplacements de ruban, qui peuvent être ou 0. On peut définir MT par un ensemble de quintuples
où les indices sont fonctions de l'indice i. A chacun de ces quintuples, décidons d'associer un quintuple image inverse (; ;; ; ). L'ensemble de ceux-ci ne constituera généralement pas une machine de Turing; mais lorsqu'il en sera ainsi, on dira que MT est réversible , et l'on donnera à la nouvelle machine le nom d'image inverse MT de MT. Les seront dits images des . La substitution d'un à un dans une configuration instantanée sera dite passage à à sa configuration image . Les suites de configurations de sont images de celles de MT, mais les parcourt dans l'ordre inverse. Considérons maintenant la machine R (MT), dont l'ensemble de quintuples est
où désigne tout couple pour lequel MT stoppe. Si l'on fait partir MT et R(MT) d'une même configuration instantanée , elles passent par les mêmes configurations tant que MT ne stoppe pas (donc éventuellement indéfiniment). Lorsque MT stoppe, R(MT) continue, parcourt en ordre inverse les configurations images des configurations parcourues, et passe par l'image de la configuration initiale. R(MT) sera dite couplage de MT avec son image inverse.
REPRéSENTATION DE MACHINES DE TURING PAR DES éPIMORPHISMES (OU DES ISOMORPHISMES) DE CODES. --- Revenons au cas où MT est quelconque. A chacun de ses quintuples comportant le mouvement +1, soit par exemple , on associe trois relations, à savoir ici :. Aux , on associe :. Aux , on associe. Enfin, à tout symbole de MT, on associe. On peut vérifier, par le procédé donné au paragraphe 1, d, que l'ensemble de toutes ces relations définit un épimorphisme de codes. Soit celui-ci, est une représentation de MT, car il en définit l'alphabet et les quintuples. On peut, d'autre part, trouver pour les configurations instantanées de MT des notations telles que pour tout couple de configurations successives on ait. Pour cela, une configuration se composera d'une suite de symboles (le mot du ruban) dans laquelle on intercalera une des lettres ou , avec un indice p égal à celui de l'état de la machine, et de façon à indiquer, non seulement la position du prochain symbole à lire, mais encore celle du symbole précédemment écrit (acev convention particulière pour la configuration initiale). Un signifie que est le premier symbole à sa droite, le premier à sa gauche. Un , l'inverse. Un signifie que et , confondus, sont tous deux le premier symbole à droite de ce . On a bien alors . Si certains états ne peuvent apparaître que sous deux seulement, ou une seule, des formes , et soit obtenu en retranchant de toutes les relations contenant des formes qui n'apparaissent jamais, alors, est encore tel que . Si est un isomorphisme de codes, MT est réversible.
SIMULATION DE MT QUELCONQUE SUR RéVERSIBLE. APPLICATION AUX ISOMORPHISMES DE CODES. --- a. Propriété. --- On peut simuler une machine de Turing MT quelconque (de configurations) sur une machine de Turing réversible (de configurations ) de façon que : quand MT passe de à , passe de à par l'intermédiaire d'un nombre fini de configurations ; on passe d'un au suivant par un épimorphisme de codes , d'un au suivant par un isomorphisme de codes; si les configurations initiales sont pour MT et pour , avec , alors pour tout i, on a , où est un mot, et où sont trois symboles qui n'apparaissent ni dans ni dans , si bien que connu donne et ; il y a des symboles dont chacun représente une relation de autre que d'identité; un symbole blanc b; et pour tout i on a, où est la relation intervenue dans . Ainsi, représente l'histoire du calcul de MT jusqu'au temps i; stoppe sur les correspondant à des stop de MT, et eux seulement; la machine , couplage de avec son image inverse, partie de passe par la configuration image si et seulement si MT, partie de, stoppe; il existe pour certaines configurations instantanées telles que, partant de , ne peut atteindre ces configurations autrement qu'en passant par (c'est-à-dire si MT, partie de , stoppe). On peut ainsi faire en sorte que le retour de à (ou bien, le passage par des encadrés par au lieu de ) soit conditionné par un stop de MT.
Preuve. --- On montre comment passer de , supposé donné par un ensemble de relations à l'ensemble des relations définissant et . Limitons-nous à donner le principe de cette construction, en montrant comment simuler une instruction de la forme. A celle-ci, on associera : une instruction, où le symbole marque la place où l'on doit modifier, et la nature de la modification; des instructions permettant de conduire le contrôle à gauche de par un état; une instruction, où représente , complètant ; des instructions de service déplaçant et, éventuellement aussi , et tout entier, pour rétablir les blancs nécessaires dans puis reportant le contrôle en avec un état ; une instruction qui complète dans .
b. THéORèME 1. --- Le problème du stop pour une machine de Turing réversible générale est indécidable. Il en est de même du problème du retour à la configuration initiale, et de celui du passage par une configuration déterminée autre que la configuration initiale.
c. THéORèME 2. --- L'équation , où est un isomorphisme de codes, avec est récursivement insoluble en n pour w, donnés quelconques. L'equation , avec , est aussi récursivement insoluble en n. () Séance du 21 octobre 1963.
() N. CHOMSKY et M. P. SCHüTZENBERGER, Computer Programming and Formal Systems, Hirschberg et Braffort, North-Holland Publ. Co., Amsterdam, 1963, p. 118--161.
() H. WANG, Mathematische Annalen, 152, 1963, p. 65--74.
() M. MINSKY, Annals of Math., 74-3, 1961.
() M. P. SCHüTZENBERGER, I. R. E. Trans. Inf. Theory, IT-2, 1956, p. 47-60.
() E. POST, Amer. J. Math., 65, 1943, p. 196--215.
() E. POST, Bull. Amer. Math. Soc., 52, 1946, p. 264--268. (Euratom, 51, rue Belliard, Bruxelles.)