Como provar que ? Estou apenas procurando por um oracle TM M e uma linguagem recursiva L ( M ) = L para a qual isso se aplica.
Eu sei que a prova de que você mostra que há um oráculo tal que P A ≠ N P A e um oráculo A tal que P A = N P A . Tenho uma dica de que devo encontrar esse oráculo A estendendo a prova de P A ≠ N P A, mas sempre que procuro e leio, é "óbvio" ou "direto" em todos os lugares, mas simplesmente não vejo como provar isso. .
complexity-theory
relativization
Stewenson
fonte
fonte
Respostas:
Como Max disse que a modificação não é difícil, eu sugiro que você não ler o resto desta resposta e pensar sobre o problema um pouco mais, só há uma parte que precisa de modificação e lembrando a definição de quando um A máquina aceita ajudará você a consertar essa parte.coNP
Vou explicar a modificação necessária abaixo, mas primeiro vamos ter uma breve visão na prova original.
Na prova original é construído em etapas, onde na etapa i com o make certeza que i th máquina em P , M i , não decide a linguagem { x | ∃ y ∈ A | x | = | y | } corretamente. Note-se que o conjunto é em N P A .A=⋃nAn i i P Mi {x∣∃y∈A |x|=|y|} NPA
Conseguimos isso simulando usando a parte de A que construímos em 0 m, em que m é grande o suficiente (a string é mais longa do que as consideradas nas etapas anteriores). M i aceita, não adicionamos nada; se ele rejeita, adicionamos uma cadeia de comprimento m que M i não faz uma consulta ao conjunto (essa cadeia existe, pois existem exponencialmente muitas cadeias de comprimento m, mas M i não pode perguntar sobre todos eles em tempo polinomial). Não modificaremos esta parte de A em etapas futuras (ou seja, cadeias de comprimento mMi A 0m m Mi m Mi m Mi A m ou menos permanecerá o mesmo). Isso garante que não decida o idioma corretamente e complete a prova.MAi
Os passos são algorítmicos, portanto, o conjunto é recursivo (a parte essencial da construção é a capacidade de simular máquinas, o que pode ser feito, por exemplo, D S p a c e ( n ω ( 1 ) )A DSpace(nω(1)) ).
fonte
Você também pode consultar o texto Complexidade Computacional de Christos Papadimitriou. Especificamente, o Capítulo 14, Seção 3, que investiga os oráculos. Provas paraPUMA= NPUMA e PB≠ NPB para alguns oráculos UMA e B por exemplo, são fornecidos em detalhes e podem ser úteis para o seu problema principal. Espero que ajude.
fonte