From e9e3334e5f2973095fb067b5da0d3b5d7e3fb371 Mon Sep 17 00:00:00 2001 From: "David A. Madore" Date: Tue, 21 Nov 2023 11:55:49 +0100 Subject: Exercise on looping Turing machines. --- exercices-inf110.tex | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/exercices-inf110.tex b/exercices-inf110.tex index 6a91072..76130f0 100644 --- a/exercices-inf110.tex +++ b/exercices-inf110.tex @@ -661,6 +661,77 @@ essentiellement identique.) % +\exercice\ (${\star}$) + +On rappelle que le mot « configuration », dans le contexte de +l'exécution d'une machine de Turing, désigne la donnée de l'état +interne de la machine, de la position de la tête de lecture, et de la +totalité de la bande. (Et la « configuration vierge » est la +configuration où l'état est $1$, la tête est à la position $0$, et la +bande est entièrement remplie de $0$.) + +On considère l'ensemble $\mathscr{F}$ des machines de Turing $M$ dont +l'exécution, à partir de la configuration vierge $C_0$, conduit à un +nombre fini de configurations distinctes (i.e., si on appelle +$C^{(n)}$ la configuration atteinte au bout de $n$ étapes d'exécution +en démarrant sur $C_0$, on demande que l'ensemble $\{C^{(n)} : n\in +\mathbb{N}\}$ soit fini). + +\textbf{(1)} Montrer que $\mathscr{F}$ est semi-décidable. +(\emph{Indication :} on pourra commencer par remarquer, en le +justifiant, que « passer par un nombre fini de configurations +distinctes » équivaut à « terminer ou revenir à une configuration déjà +atteinte ».) + +\textbf{(2)} Montrer que $\mathscr{F}$ n'est pas décidable. +(\emph{Indication :} si on savait décider $\mathscr{F}$ on saurait +décider le problème de l'arrêt.) + +\begin{corrige} +\textbf{(1)} Commençons par remarquer que « passer par un nombre fini +de configurations distinctes » équivaut à « terminer ou revenir à une +configuration déjà atteinte ». En effet, dans un sens, si l'exécution +termine (i.e., termine en temps fini), il est évident qu'elle n'a +parcouru qu'un nombre fini de configurations distinctes ; mais si elle +revient à une configuration déjà atteinte, la machine boucle +indéfiniment à partir de cet état puisque l'exécution est déterministe +(la configuration contient toute l'information nécessaire à +l'exécution de la machine $M$) : si $C^{(i)} = C^{(j)}$ avec $i