Intuition derrière la relativisation

10

Je prends un cours sur la complexité informatique. Mon problème est que je ne comprends pas la méthode de relativisation . J'ai essayé de trouver un peu d'intuition dans de nombreux manuels, malheureusement, jusqu'à présent sans succès. J'apprécierai que quelqu'un puisse faire la lumière sur ce sujet afin que je puisse continuer par moi-même. Peu de phrases suivantes sont des questions et mes réflexions sur la relativisation, elles aideront à naviguer dans la discussion.

Très souvent, la relativisation vient en comparaison avec la diagonalisation, qui est une méthode qui permet de distinguer l'ensemble dénombrable de l'ensemble dénombrable. Il vient en quelque sorte de la relativisation que la question versus ne peut pas être résolue par diagonalisation. Je ne vois pas vraiment pourquoi la relativisation montre l'inutile de la diagonalisation, et si elle est inutile, pourquoi est-elle réellement inutile.PNP

L'idée derrière l'oracle Turing machine au début est très claire. Cependant, en ce qui concerne et l'intuition disparaît. Oracle est une boîte noire qui est conçue pour un langage spécial et répond à la question de savoir si la chaîne à l'entrée de l'oracle est dans la langue dans le temps 1. Comme je l'ai compris, TM qui contient un oracle consiste simplement à effectuer des opérations auxiliaires et à demander à l'oracle. Donc, le noyau de la MT est l'oracle, tout le reste est moins important. Quelle est la différence entre et , même l'oracle pensé dans les deux fonctionne dans le temps 1.MANPAPAPANPA

La dernière chose est la preuve de l'existence d'un oracle tel que . J'ai trouvé la preuve dans plusieurs manuels et dans chacun d'eux, la preuve semble très vague. J'ai essayé d'utiliser "Introduction à la complexité" par Sipser, Chapter9. Intractabilité , et n'a pas eu l'idée de construire une liste de toutes les MT oracle temporelles polynomiales .BPBNPBMi

C'est plus ou moins tout ce que je sais sur la relativisation, j'apprécierai si quelqu'un décide de partager ses réflexions sur le sujet.

Addendum : dans l'un des manuels, j'ai trouvé un exemple de langage (Complexité informatique: une approche moderne de Boaz Barak Sanjeev Arora. Théorème 3.7. Page 74). c'est un langage unaire. Je crois que (1,11,111,1111, ...) sont tous dans . L'auteur affirme qu'un tel langage est en c'est-à-dire que je ne peux pas comprendre pourquoi, donc l'oracle pour B peut tout résoudre dans le temps 1. Pourquoi avons-nous besoin d'une MT non déterministe avec oracle. Si ce n'est pas bon exemple de s'il vous plaît mettre le vôtre de telle sorte que pour approuver l'existence de .NPBUB={1n:some string of length n is in B}UBNPBNPBNPB

com
la source
2
PA et sont des classes de langage, ce ne sont pas des machines de Turing. Vous dites que l'oracle est le "noyau" de la MT, mais ce n'est pas nécessairement vrai. Par exemple, que faire si est la langue vide? NPAA
Yuval Filmus
c'est un sujet très délicat, généralement pas tant pour les étudiants de premier cycle. un aspect est que les oracles dépendent quelque peu du modèle. c'est-à-dire qu'il n'y a apparemment pas de manière strictement cohérente de concevoir des oracles. l'intuition de base est que c'est une machine avec une capacité de sous-programme "magique" (donnée par l'oracle) telle que la machine + oracle est toujours au moins aussi puissante que la machine d'origine, mais parfois pas beaucoup plus puissante ...
vzn
1
question connexe: cs.stackexchange.com/questions/1271/… , avec une excellente réponse de Tsuyoshi Ito
A.Schulz
Je ne sais pas trop ce que vous demandez. Vous semblez confus au sujet de la preuve BGS et posez également un tas d'autres questions. Veuillez poser une seule question ciblée. Notez que ce n'est pas un forum de discussion ou un forum, c'est un site de questions / réponses.
Kaveh
Demandez-vous une explication de la preuve BGS pour l'existence d'un oracle qui sépare P et NP? Demandez-vous une explication sur la relation entre relativisation et diagonalisation? (dans l'affirmative, la réponse de Tsuyoshi dans la question lignée répond-elle à votre question? Sinon, veuillez expliquer pourquoi.)
Kaveh

Réponses:

7

Vous ne l' avez pas vraiment posé une question, mais il semble que vous ne savez pas ce que moyen et que moyen pour une langue . La classe est simplement tous les langages décidables en "temps NP", étant donné une machine de turing avec comme oracle. Cela signifie une machine de turing non déterministe avec accès à qui fonctionne en temps polynomial. Le est la version déterministe.PANPAANPAAAPA

Pål GD
la source
1
Merci beaucoup pour la réponse, pourriez-vous donner un exemple de la façon dont la puissance de NTM avec oracle nous aide à reconnaître plus de langage que DTM avec oracle. La preuve BGS montre un tel langage mais je n'ai pas eu la preuve.
com
Parfois, au lieu d'un langage , je trouve une classe de complexité, par exemple , qu'est-ce que cela signifie dans ce cas? Que nous choisissons pour être un NP-complet? (plus généralement, que l'on choisisse une langauge complète pour la classe )? APNPAA
Fawzy Hegab
Oui, est en effet avec un problème NP-complet comme oracle. PNPP
Pål GD