Sederhananya: apa korespondensi antara mesin Turing dengan oracle, dan keluarga sirkuit seragam dengan oracle? Bagaimana yang terakhir didefinisikan untuk mendapatkan model komputasi yang sama, untuk mesin Turing oracle yang diberikan?
Ini mungkin pertanyaan mendasar, tetapi tidak jelas ke mana harus mencari, dan saya adalah tipe orang yang suka memastikan bahwa yayasan saya menggunakan mortar berkualitas baik. Jika ada referensi standar, harap tunjuk saya ke sana. (Buku Papadimitriou, misalnya, tampaknya tidak menggambarkan sirkuit dengan oracle sama sekali.)
Hipotesis kerja saya adalah ini: rangkaian keluarga yang seragam dengan akses ke oracle (misalnya untuk menyelesaikan masalah NP-complete) didefinisikan sebagai berikut:
Satu mendefinisikan keluarga tak terbatas dari "gerbang oracle" O n , satu untuk setiap ukuran sirkuit n, masing-masing yang menghitung fungsi f n : {0,1} cn → {0,1} untuk beberapa konstanta c.
Fungsi f n yang dihitung oleh gerbang oracle O n harus "seragam" dalam arti berikut: untuk setiap n <N dan x ∈ {0,1} n , kita memerlukan f n ( x ) = f N (0 c ( N − n) x ) --- yaitu, gerbang oracle harus menggunakan "penyandian" yang konsisten dan extensbile dari input mereka.
Satu kemudian mendefinisikan rangkaian keluarga seragam, di mana gerbang oracle adalah di antara operasi yang diizinkan ke sirkuit, membatasi sirkuit untuk ukuran input n untuk menggunakan gerbang O n .
Saya membayangkan bahwa beberapa pilihan di atas dapat diperbaiki secara sewenang-wenang tanpa kehilangan sifat umum apa pun. Yang saya minati adalah referensi untuk korespondensi, atau setidaknya deskripsi tentang bagaimana memodifikasi deskripsi di atas untuk mendapatkan yang standar.