Pourquoi ne pouvons-nous pas inverser la réponse d'un NDTM efficacement?

11

J'ai lu plusieurs fois qu'il n'est pas possible de retourner la réponse d'un NDTM efficacement. Cependant, je ne comprends pas pourquoi. Par exemple, étant donné un MTND qui fonctionne en O ( n ) , ce texte (section 3.3) indique qu'il ne sait pas comment une autre MTND T peut déterminer dans O ( n 100 ) temps comment retourner M réponse s.MO(n)TO(n100)M

Mon problème est le suivant: un NDTM produit ssil existe une séquence de choix non déterministes qui mène à l'état d'acceptation. De plus, il existe un NDTM N U universel qui peut simuler chaque NDTM avec seulement une petite surcharge (logarithmique). Alors pourquoi ne pouvons-nous pas construire T comme suit: Premièrement, simulons M avec le NDTM universel qui devrait être possible dans le temps O ( n log n ) . Puis sortez 1 - la réponse de M. Cela signifierait que nous pouvons inverser la réponse de n'importe quel NDTM linéaire dans le temps O ( n log n ) .1NUO(nlogn)O(nlogn)

user1494080
la source
Un NDTM ne "sort" rien. Ajustez votre modèle mental de non-déterminisme.
Raphael

Réponses:

15

Une machine de Turing non déterministe accepte si au moins un chemin accepte; il rejette uniquement si tous les chemins rejettent. Cette asymétrie rend difficile le «retournement des réponses».

MwMwMMMwMw

Une machine non déterministe ne peut pas regarder tous ses chemins simultanément et agir en fonction de ce que font tous ces chemins. Si vous le souhaitez, vous pouvez le considérer comme une forme de parallélisme où les fils sont interdits de communiquer entre eux. Lorsque tous les threads sont terminés, le programme doit se poser la question suivante: "Est-ce qu'au moins un de mes threads a accepté?" Si la réponse est oui, il est légalement obligé d'accepter; si la réponse est non, il est légalement obligé de rejeter. Il ne peut rien faire d'autre.

MMMMMMMM

La seule façon de savoir si une machine non déterministe rejette son entrée est d'essayer tous les chemins possibles et de vérifier qu'ils rejettent tous. Après tout, si même l'un d'entre eux acceptait, la machine accepterait l'entrée. Mais essayer tous les chemins possibles est exponentiellement plus lent que d'essayer un seul.

David Richerby
la source
2

O(n)O(n)

NUO(nlog(n))nlog(n)MM

Denis
la source
-3

=?=?

vzn
la source
1
En fait, il demande quelque chose de similaire à co-NP = NP : il est parfaitement possible que P et NP soient différents mais les NDTM peuvent être efficacement annulés.
David Richerby