Faire tourner une machine de Turing
Exercice de TD · niveau 2 · enseignement scientifique (terminale), chapitre 11 — De la machine de Turing à l'intelligence artificielle
Énoncé
On reprend la table du cours : en état , lire donne « écrire , aller à gauche, rester en » ; lire donne « écrire , aller à gauche, passer en » ; lire donne « écrire , aller à gauche, passer en ». Le ruban porte , la tête est sur le dernier , l'état est . 1. Dérouler l'exécution étape par étape. 2. Vérifier le résultat en décimal. 3. Pourquoi la troisième ligne de la table est-elle indispensable ? 4. Cette machine pourrait-elle multiplier par deux ?
Corrigé
1. Étape : lit , écrit , va à gauche, reste . Ruban . Étape : lit , écrit , gauche, . Ruban . Étape : lit , écrit , gauche, . Ruban . Étape : la tête est maintenant sur la case vide à gauche ; elle lit , écrit , va à gauche et passe en . Ruban . Arrêt.
2. et . La machine a bien ajouté .
3. Sans elle, la machine s'arrêterait sur la case vide sans avoir écrit la retenue, et donnerait au lieu de . Cette ligne traite le cas où la retenue se propage au-delà du nombre, c'est-à-dire exactement le cas où le nombre est formé uniquement de . C'est un cas particulier — et l'on retrouve la leçon de la section sur les bogues : les fautes se logent dans les cas limites.
4. Non, pas avec cette table : une machine de Turing est définie par sa table, et celle-ci ne décrit que l'ajout de . Il faudrait une autre table. En revanche, une machine universelle pourrait exécuter l'une ou l'autre, puisqu'elle prend la table elle-même comme donnée. C'est toute la différence entre une machine spécialisée et un ordinateur.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.