Ini sedikit tergantung pada interpretasi yang tepat dari pertanyaan Anda, tetapi saya pikir skenario Anda dapat secara umum digambarkan sebagai masalah 'KOMPUTE Y' di mana diberikan beberapa algoritma waktu polinomial yang ditetapkan secara universal dan polinomial p , masukan ⟨ x , 1 n ⟩ , keluaran a string y ∈ { 0 , 1 } p ( n ) , sehingga T ( x , y , 1 n ) menghasilkan 1, dan y selalu ada untuk semua kemungkinan x .Thal⟨ X , 1n⟩y∈ { 0 , 1 }p ( n )T( x , y, 1n)yx
Satu pertanyaan kemudian mungkin apakah algoritma waktu polinomial untuk 'KOMPUTE Y' menyiratkan P= NP
Dalam kasus ini, anggap Anda dapat memecahkan (katakanlah) 3SAT dalam waktu polinomial dengan jumlah panggilan konstan ke oracle yang memecahkan 'COMPUTE Y', yaitu beberapa algoritma mana A ( ϕ ) = 1 iff ϕ memuaskan, ASEBUAHA ( ϕ ) = 1ϕ sebaliknya. Balikkan bit keluaran untuk mendapatkan ˉ A , sebuah algoritma di mana ˉ A ( ϕ ) = 0 iff ϕ memuaskan dan ˉ A ( ϕ ) = 1 jika ϕA ( ϕ ) = 0SEBUAH¯SEBUAH¯( ϕ ) = 0ϕSEBUAH¯( ϕ ) = 1ϕ tidak memuaskan.
SEBUAH¯yTNP= c o NP
NP= c o NPNPkNP