Ekspresi mu-rekursif eksplisit untuk fungsi Ackerman

15

Bisakah Anda menunjukkan bagaimana membangun fungsi Ackerman (sebenarnya saya tertarik pada versi yang diusulkan oleh Rózsa Péter dan Raphael Robinson) melalui operator standar rekursif mu? Saya mencoba makalah asli oleh Péter dan Robinson, tetapi makalah Péter menggunakan bahasa yang berbeda dari makalah Inggris dan Robinson "Rekursi dan Rekursi Ganda" dan "Fungsi Rekursif Primitif" juga tidak membantu: pertama-tama tampaknya lebih relevan, tetapi digunakan juga disebut operator rekursi ganda untuk mendefinisikan fungsi Ackerman, sehingga dalam hal ini dicari definisi eksplisit operator dalam istilah rekursif.

Yang paling dekat dengan jawabannya adalah P. Smith dalam "Pengantar teorema Godel" (CUP, 2007) (29,4 Fungsi Ackermann-Peter adalah μ-rekursif), tetapi ia muncul dengan yang berikut: "membuat argumen kedap air cukup membosankan meskipun tidak sulit. Tidak ada yang bisa dipelajari dari menguraikan detailnya di sini: jadi kami tidak akan melakukannya. "

Saya juga mencoba buku Rózsa Péter "Fungsi Rekursif" (1967, Academic press). Ada banyak varian untuk operator rekursi yang diberikan di sana. Biasanya satu mengurangi ke yang lain. Saya percaya bahwa ada jenis operator rekursi yang cocok untuk definisi fungsi Ackerman dan urutan langkah-langkah yang menguranginya menjadi redursi primitif dan operator minimisasi, tetapi saya mendapati diri saya tidak dapat menyelidiki sepanjang jalan turun.

Artem Pelenitsyn
sumber
1
Sebenarnya ini tidak sesulit kelihatannya pada awalnya. Triknya adalah membiarkan operator mencari perhitungan fungsi Ackerman, yaitu tabel nilai hingga input, dan kemudian memeriksa bahwa tabel mengikuti definisi fungsi. Yang diperlukan adalah pengodean / dekode urutan yang terbatas, dan memeriksa tabel. Pengkodean / penguraian secara eksplisit didefinisikan dalam banyak buku pelajaran, pemeriksaan dapat dilakukan oleh penjumlahan universal terbatas atas hubungan sederhana antara entri tabel. Pengukur universal terbatas dapat dinyatakan sebagai perkalian terbatas,μ
Kaveh
dan definisi eksplisit dari penggandaan terbatas dalam hal rekursi juga dapat ditemukan di buku teks. μ
Kaveh
@ Kaveh ya, ide yang sama diimplementasikan dalam P. Smith "Pengantar teorema Godel". Pengkodean dan penerapan operator minimisasi diberikan di sana. Bagian yang sulit adalah bagaimana menghasilkan "tabel" seperti yang Anda sebutkan. Smith melewatkannya. Jadi sepertinya saya harus memikirkannya lebih keras daripada menunggu solusi di sini;) Setidaknya terima kasih atas persetujuan Anda terhadap pendekatan umum.
Artem Pelenitsyn
Tabel hanyalah urutan yang terbatas di mana entri diindeks oleh hasil dari fungsi pasangan. mana adalah rhs dari persamaan untuk . R ( c , x , y ) A c k ( x , y )μc:x<Len(c)y,z<x,x=<y,z>→c<y,z>=R(c,x,y)R(c,x,y)Ack(x,y)
Kaveh

Jawaban:

13

Memecah fungsi Ackermann sampai ke operator dasar akan sangat panjang, tapi di sini ada sketsa:

Perhatikan bahwa ketika menghitung secara rekursif, pada setiap titik perhitungan Anda berurusan dengan ekspresi dari bentuk . Diberikan fungsi pasangan berpasangan dengan terbalik , kita dapat menyandikan status ini sebagai (hanya dalam kasus ) .Kita kemudian dapat mendefinisikan fungsi evaluasi satu langkah, dengan syarat:A ( m 1 , A ( m 2 , ... , A ( m k , z ) ... ) p ( π 1 , π 2 ) p ( z , p ( k , p ( m k , ... , p ( m 2 , m 1 ) ... ) pA(m,x)A(m1,A(m2,,A(mk,z))p(π1,π2)p(z,p(k,p(mk,,p(m2,m1))k = 0p(z,0)k=0

e(p(z,0))=p(z,0) ;

e(p(z,p(k,p(0,c))))=p(z+1,p(k1,c)) ;

e(p(0,p(k,p(m+1,c))))=p(1,p(k,p(m,c))) ;

e(p(z+1,p(k,p(m+1,c))))=p(z,p(k+1,p(m+1,p(m,c)))) .

Anda kemudian mendapatkan fungsi evaluasi n-langkah menggunakan rekursi primitif:

E(0,m,x)=p(x,p(1,m)) dan .E(n+1,m,x)=e(E(n,m,x))

Akhirnya, bungkus rekursi di sekitar untuk menemukan titik di mana kita sampai pada keadaan bentuk - akan menjadi .μEp(z,0)zA(m,x)

Klaus Draeger
sumber
Terima kasih! Satu pertanyaan lagi (mungkin cukup naif, maaf): definisi pencocokan pola (f (0) = ..., f (n + 1) = ...) digunakan secara luas, tapi saya ragu mereka benar-benar diubah oleh definisi fungsi mu-rekursif. Apakah mereka?
Artem Pelenitsyn
Jenis pembedaan jenis ini (misalnya, mendefinisikan oleh dan ) hanyalah kasus khusus rekursi primitif yang tidak benar-benar menggunakan nilai sebelumnya. Dalam perhitungan , Anda juga akan menggunakan fungsi bantu dan sedikit jika Anda ingin memecah ini ke set operasi dasar. f(x,y)f(0,y)=g(y)f(x+1,y)=h(x,y)A(x,y)π1,π2
Klaus Draeger
Misalnya, Anda dapat menerjemahkan definisi sebagai , di mana dan , di mana Anda mendapatkan ide. ee(s)=f1(π1(s),π2(s))f1(z,0)=p(z,0)f1(z,m+1)=f2(z,π1(m+1),π2(m+1))f2
Klaus Draeger
7

Ini adalah varian dari ide yang diposting oleh Kaveh, tetapi saya tetap memposting karena memungkinkan Anda untuk menyapu banyak detail buruk di bawah karpet tanpa benar-benar melakukan handwaving.

Fakta kuncinya adalah bahwa grafik fungsi Ackermann adalah primitif rekursif. Tidak sulit untuk menemukan ikatan rekursif primitif yang sangat kasar pada kode untuk tabel nilai Ackermann yang diperlukan untuk memverifikasi bahwa . Jangan mencoba untuk mendapatkan batas yang tajam - semakin kasar semakin mudah! Sesuatu seperti harus cukup baik, tetapi itu tergantung pada pilihan skema pengkodean Anda. Karena verifikasi nilai-nilai tabel dapat dijelaskan oleh rumus terikat, itu adalah primitif rekursif.B(m,n,w)A(m,n)=wB(m,n,w)=2mww

Setelah Anda memiliki definisi rekursif primitif untuk grafik dari fungsi Ackermann, cukup tentukan .G(m,n,w)A(m,n)=μwG(m,n,w)

Sayangnya, strategi ini tidak berfungsi untuk semua fungsi yang didefinisikan oleh rekursi ganda (atau ganda). Alasan kerjanya untuk fungsi Ackermann - seperti yang akan Anda lihat ketika mencoba mencari baik - adalah ia tumbuh sangat monoton. Untuk kasus umum, Anda harus menggunakan ide Kaveh dan minta mencari tabel nilai yang sesuai. Ini pada dasarnya adalah alasan yang sama mengapa Teorema Bentuk Normal Kleene perlu melakukan proyeksi setelah menerapkan operator .B(m,n,w)μμ

François G. Dorais
sumber
1
Hai François. Senang melihat Anda di cstheory.
Kaveh
Hai Kaveh. Senang akhirnya bisa menjawab sesuatu di sini!
François G. Dorais