Que signifie l'espace sublinéaire pour les machines Turing?


10

Il a été prouvé que le problème de décider si une entrée est un palindrome ou non nécessite un espace sur une machine de Turing. Cependant, même le stockage de l'entrée prend de l'espace  cela ne signifie-t-il pas que toutes les machines Turing nécessitent de l'espace ?Ω(Journaln)nΩ(n)

Bien sûr, il n'y a pas de contradiction ici, car toute fonction qui utilise au moins l'espace linéaire utilise également au moins l'espace logarithmique. Mais écrire suggère qu'il est possible pour une machine Turing d'utiliser moins d'espace linéaire - après tout, pourquoi les gens passeraient-ils tout ce temps à prouver si c'était exactement la même chose ce qui semble être un trivial lié? Alors, qu'est-ce que cela signifie pour une machine Turing d'utiliser moins d'espace linéaire?Ω(Journaln)Ω(Journaln)Ω(n)


3
Afaik, la complexité de l'espace considère généralement la mémoire supplémentaire pour exactement cette raison. (Notez que votre question est mal posée; vous voulez demander "comment atteindre O (log n) ...".)
Raphael

Réponses:


15

Pour les espaces restreints, nous utilisons le modèle suivant. La machine Turing a trois bandes: une bande d'entrée en lecture seule, une bande de travail en lecture-écriture et une bande de sortie en écriture seule. Nous mesurons uniquement la consommation d'espace sur la bande de travail. Pour les palindromes, avec l'espace sur la bande de travail, nous pouvons implémenter des boucles FOR qui vont sur l'entrée, en comparant les caractères correspondants aux deux extrémités. Chaque index prend de l' espace pour être stocké.O(Journaln)O(Journaln)


Merci d'avoir répondu. Pourquoi devons-nous convertir l'index au format binaire? Je pensais que les machines de Turing étaient des modèles abstraits de calcul, alors pourquoi convertir des nombres décimaux en leurs représentations binaires?
jsguy

4
O(Journaln)

@DavidRicherby, une cellule de bande ne peut-elle pas contenir un nombre à plusieurs chiffres?
jsguy

4
@jsguy Actualisez la définition des machines de Turing. Une cellule de bande contient un seul symbole de l'alphabet.
David Richerby

@DavidRicherby, merci, je pense que cela a du sens pour moi maintenant!
jsguy
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.