Questo dipende leggermente dall'interpretazione precisa della tua domanda, ma penso che il tuo scenario possa essere descritto genericamente come un problema 'COMPUTE Y' dove sono stati dati alcuni algoritmi di tempo polinomiale universalmente fissi e polinomio , su input , una stringa , in modo che produca 1, e esiste sempre per tutte le possibili .Tp⟨x,1n⟩y∈{0,1}p(n)T(x,y,1n)yx
Una domanda potrebbe quindi essere se un algoritmo temporale polinomiale per "COMPUTE Y" implicaP=NP
In questo caso, supponiamo che tu possa risolvere (diciamo) 3SAT in un tempo polinomiale con un numero costante di chiamate a un oracolo che risolve "COMPUTE Y", cioè un algoritmo dove iff è soddisfacente, altrimenti. Capovolgi il bit di output per ottenere , un algoritmo in cui iff è soddisfacente e se non è soddisfacente.AA(ϕ)=1ϕA(ϕ)=0A¯A¯(ϕ)=0ϕA¯(ϕ)=1ϕ
Converti questo algoritmo (che usa un oracolo per 'COMPUTE Y') in un algoritmo non deterministico (che non usa oracoli) semplicemente sostituendo ogni chiamata di oracolo con un'ipotesi non deterministica di che puoi verificare con una chiamata a . Ora hai un algoritmo non deterministico che decide con successo istanze 3CNF insoddisfacenti, quindi yTNP=coNPA¯yTNP=coNP
A parte questo, se , ciò implica che tutti i completi (come -clique o 3SAT) presentano lievi variazioni il cui problema decisionale è semplice (sempre "sì") ma la cui versione di ricerca è -hardNP=coNPk N PNPkNP