Des bâches réversibles de Turing?


10

Cette question est de savoir s'il existe des tarpits de Turing réversibles connus, où "réversible" signifie au sens d' Axelsen et de Glück , et "tarpit" est un concept beaucoup plus informel (et pourrait ne pas être un très bon choix de mot), mais je ferai de mon mieux pour expliquer ce que je veux dire par là.

Ce que je veux dire par "tarpit"

Certains modèles de calcul sont conçus pour être utiles d'une manière ou d'une autre. D'autres se trouvent être Turing complet et n'ont pas vraiment de propriétés particulièrement utiles; ce sont les "bâches de Turing". Les exemples incluent le langage Brainfuck , l' automate cellulaire Rule 110 et le langage Bitwise Cyclic Tag (que j'aime parce qu'il est très facile à implémenter et que toute chaîne binaire est un programme valide).

Il n'y a pas de définition formelle de "tarpit de Turing", mais pour cette question, je l'utilise pour désigner un système assez simple (en termes d'avoir un petit nombre de "règles") qui "se trouve" être Turing complet, sans son état interne ayant une signification sémantique évidente. L'aspect le plus important pour moi est la simplicité des règles, plutôt que le manque de sémantique évidente. Fondamentalement, nous parlons du genre de choses sur lesquelles Stephen Wolfram a écrit un très gros livre , bien qu'il n'ait pas utilisé le mot "tarpit".

Ce que je veux dire par "réversible"

Je m'intéresse au calcul réversible. En particulier, je m'intéresse aux langages qui sont r-Turing complets, au sens d' Axelsen et de Glück , ce qui signifie qu'ils peuvent calculer chaque fonction injective calculable, et ne peuvent calculer que des fonctions injectives. Or, il existe de nombreux modèles de calcul réversibles dans ce sens, comme la machine universelle Turing réversible d'Axelsen , ou le langage réversible de haut niveau Janus . (Il existe de nombreux autres exemples dans la littérature; c'est un domaine de recherche actif.)

Il convient de noter que la définition d'Axelsen et Glück de l'exhaustivité de r-Turing est une approche différente de l'informatique réversible que l'approche habituelle due à Bennett. Dans l'approche de Bennett, un système est autorisé à produire des "données d'ordures" qui sont jetées à la fin du calcul; dans de telles conditions, un système réversible peut être Turing complet. Cependant, dans l'approche d'Axelsen et de Glück, le système n'est pas autorisé à produire de telles "données indésirables", ce qui restreint la classe de problèmes qu'il peut calculer. (Par conséquent, "r-Turing complet" plutôt que "Turing complet".)

Remarque: le papier Axelsen et Glück est derrière un mur payant. C'est malheureux - à ma connaissance, il n'y a actuellement aucune ressource non paywall sur le sujet de l'exhaustivité de r-Turing. J'essaierai de démarrer une page Wikipédia si j'ai le temps, mais sans promesse.

Ce que je cherche

Les exemples de calcul réversible mentionnés ci-dessus sont tous plutôt "chargés sémantiquement". C'est une bonne chose dans la plupart des contextes, mais cela signifie que les règles requises pour mettre à jour leur état à chaque pas de temps sont assez complexes. Je cherche les "tarpits" de l'informatique réversible. Autrement dit, des systèmes plus ou moins arbitraires avec des règles assez simples qui "se trouvent" être des langages complets r-Turing. Je répète qu'il n'y a pas de définition formelle de ce que je recherche, mais je le saurai quand je le verrai, et je pense que c'est une chose raisonnable à poser.

Il y a un certain nombre de choses que je connais qui correspondent presque au projet de loi, mais pas tout à fait. Il existe plusieurs automates cellulaires réversibles qui se sont révélés être Turing complets. La fourmi de Langton (une sorte de machine de Turing bidimensionnelle avec une fonction de transition d'état réversible assez arbitraire et assez simple) est également Turing complète, tant que ses conditions initiales peuvent contenir des motifs répétitifs infinis. Cependant, avec ces systèmes, il n'est pas trivial de définir un mappage de leur état vers une "sortie" de telle manière qu'aucune donnée indésirable ne soit jetée. Je m'intéresse spécifiquement aux systèmes qui peuvent être considérés comme prenant une entrée, effectuant une séquence de transformations (réversibles) dessus, puis (s'ils se terminent) renvoyant une sortie.

(J'espère que cette question sera plus facile à répondre que ma précédente sur un équivalent réversible au calcul lambda.)


2
Je ne sais pas comment baliser cette question. Ce serait bien s'il y avait une balise informatique réversible, mais je n'ai pas le représentant pour en créer une.
Nathaniel

1
x(x,f(x))f

1
il y a peut-être une question décente qui peine à se libérer ici. la phrase question que vous énoncez dans le dernier commentaire n'apparaît nulle part dans la question postée . la question ne peut être répondue que par une tentative de définition de "taring tarpit" non pas dans les commentaires mais dans le post ... (pouvez-vous lier un défn de "r-Turing complet" quelque part? idéalement wikipedia?)
vzn

1
Je suis d'accord avec vzn qu'il est un peu difficile d'obtenir le nœud de votre question à partir de votre message. Il semble que ce soit la phrase "Je cherche les" tarpits "de l'informatique réversible", mais ce n'est pas très clair; une mise en forme (même juste en gras cette phrase) aiderait probablement!
usul

1
@vzn honnêtement, je vous invite à lire correctement la question avant de continuer à la critiquer. Le sujet des automates cellulaires est déjà abordé dans le texte.
Nathaniel

Réponses:


-1

"r-complete" semble être un concept relativement nouveau inventé par Axelsen et Glück ~ 2011, peut-être peu considéré par les autres auteurs, et se demande s'il existe une preuve différente de Turing complete.

je prends cette question bavarde et détournée pour demander essentiellement:

  • un système complet de Turing simple
  • réversible

essayez les automates cellulaires réversibles Turing-complets, par exemple:

  • Automates cellulaires universels réversibles à deux états en trois dimensions Miller / Fredkin

    Un nouvel automate cellulaire réversible à deux états (RCA) est décrit. Cette RCA tridimensionnelle est montrée capable d'un calcul universel. De plus, il est prouvé que ce RCA est capable de construction universelle.

  • K. Imai et K. Morita, Un automate cellulaire triangulaire réversible bidimensionnel à 8 états et calcul universel, Theoretical Computer Science 231 (2000), no. 2, 181–191.

    Résumé: Un automate cellulaire réversible (RCA) est un automate cellulaire (CA) dont la fonction globale est injective et chaque configuration a au plus un prédécesseur. Margolus a montré qu'il existe un RCA bidimensionnel bidimensionnel à calcul universel. Mais son RCA a un voisin non uniforme, alors Morita et Ueno ont proposé un RCA universel à 16 états en utilisant des automates cellulaires partitionnés (PCA). Étant donné que PCA peut être considéré comme une sous-classe de CA standard, leurs modèles ont un voisin standard. Dans cet article, nous montrons que le nombre d'états des modèles de Morita et Ueno peut être réduit. Pour diminuer le nombre d'états de leurs modèles avec préservation des propriétés isotropes et de conservation des bits, nous avons utilisé un triangulaire à 3 voisins, et donc un RCA à 8 états peut être possible. Il s'agit du RCA bidimensionnel le plus petit à l'état de propriété isotrope dans le cadre de l'ACP. Nous montrons que notre modèle peut simuler des éléments de circuit de base tels que des fils unitaires, des éléments de retard, des fils croisés, des portes de commutation et des portes de commutation inversées, et il est possible de construire une porte Fredkin en combinant ces éléments. Puisque la porte de Fredkin est connue pour être une porte logique universelle, notre modèle a une universalité de calcul.

il a été trouvé comme référence dans cette enquête auprès des CA qui pourraient avoir d'autres pistes utiles pour l'enquête (par exemple, voir la section 7, Réversibilité et universalité). (à 17 pages et 86 références, le titre frise l'ironie.)

UNIVERSALITÉS DANS L'ENQUÊTE CELLULAIRE SUR LES AUTOMATES A (COURTES) Ollinger


1
Je connais des travaux sur les CA réversibles datant des années 70, mais, à partir de la question: "Il y a plusieurs automates cellulaires réversibles qui se sont révélés être Turing complets ... Cependant, avec ces systèmes, il n'est pas trivial de définir un mappage de leur état à une "sortie" de telle sorte qu'aucune donnée indésirable ne soit jetée. Je m'intéresse spécifiquement aux systèmes qui peuvent être considérés comme prenant une entrée, effectuant une séquence de transformations (réversibles) dessus, et puis (s'ils se terminent) renvoyant une sortie. "
Nathaniel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.