Système de Post

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche

En informatique théorique et en logique mathématique, un système de Post, ou système canonique de Post, appelé ainsi d’après son créateur Emil Post, est un système de manipulation de chaînes de caractères qui commence avec un nombre fini de mots et les transforme par application d’un ensemble fini de règles d’un forme particulière, et par là engendre un langage formel. Ces système ont surtout un intérêt historique car tout système de Post peut être réduit à un système de réécriture de mots (un système de semi-Thue) qui est une formulation plus simple. Les deux formalismes -- système de Post et réécriture -- sont Turing-complets.

Un exemple : les expressions bien parenthésées[modifier | modifier le code]

Un système de Post est la donnée d'un alphabet, un ensemble de mots initiaux et de règles de production. Par exemple :

  • Un alphabet constitué des deux caractères et ;
  • Un l'ensemble qui contient le mot []comme seul mot initial ;
  • Les trois règles de production suivantes :

Voici quelques mots dérivés :

[] mot initial
[][] obtenu par la règle 2.
[[][]] obtenu par la règle 1.
[[][]][[][]] obtenu par la règle 2.
[[][]][][[][]] obtenu par la règle 3.

Définition formelle[modifier | modifier le code]

Un système canonique de Post est un triplet , où

  • est un alphabet fini ;
  • est un ensemble fini de mots initiaux sur l'alphabet  ;
  • est un ensemble fini de règles de transformation de mots, appelées règles de production.

Chaque règle est de la forme :

et et sont des mots fixes contenant des variables, notées et respectivement, de la forme

et

.

Les mots sont appelés les antécédents, le mot le conséquent de la règle. La condition requise est que chaque dans le conséquent figure parmi les variables des antécédents, et que chaque conséquent et antécédent contient au moins une variable.

En général, une règle de production ne contient qu'un seul antécédent[1], auquel cas elle s'écrit plus simplement

.

On peut appliquer une règle à un mot s'il se factorise selon l'antécédent de la règle, en associant à chaque variable un facteur du mot. Le mot obtenue est alors celui où les variables du conséquent sont remplacées par les valeurs associées aux variables dans l'antécédent. Dans le cas de plusieurs antécédents, le mot doit se factoriser selon chacun des antécédents pour dériver le conséquent. Post lui-même a prouvé, preuve reprise dans le livre de Minsky[2] a prouvé que l’on peut se contenter de règles avec un seul antécédent.

Le langage engendré par le système de Post est l’ensemble des mots composés des mots initiaux et des mots que l’on obtient par une application répétée de règles de production. Ces ensembles sont des langages récursivement énumérables et, réciproquement, tout langage récursivement énumérable est la restriction d’un tel ensemble à un sous-alphabet de .

Théorème de forme normale[modifier | modifier le code]

Un système de Post est en forme normale (normal form) si toutes ses règles sont de la forme

Les règles en forme normale consistent donc à enlever le préfixe au début d' un mot et d'ajouter le mot à la fin. Post a démontré en 1943[3] le théorème de forme normale suivant :

Théorème de forme normale de Post — Pour tout système de Post, il existe un système de Post en forme normale équivalent ; ce système peut être construit effectivement.

Les systèmes de tague qui eux aussi sont un modèle de calcul universel, sont des exemples particuliers de systèmes de Post en forme normale ; ils sont de plus « monogènes » : Un système est dit monogène si, pour toute chaîne, il existe au plus un nouveau mot peut être produit, en d’autres termes, si le système est déterministe.

Systèmes de réécriture et grammaires de type 0[modifier | modifier le code]

Un système de réécriture est un cas particulier d’un système de Post où les productions sont de la forme :

Les productions sont des règles de substitution, aussi écrites sous la forme . On peut démontrer que tout système de Post peut être ramené à un tel système, qui est une grammaire formelle de type 0 dans la hiérarchie de Chomsky.

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é « Post canonical system » (voir la liste des auteurs).
  1. C’est la définition de Dexter Kozen (Kozen 1997, p. 256-257).
  2. Minsky 1967.
  3. Post 1943.

Bibliographie[modifier | modifier le code]

Articles connexes[modifier | modifier le code]