Bagaimana membuat Kalkulus Lambda menjadi normal kembali tanpa sistem tipe?


9

Apakah ada sistem yang mirip dengan kalkulus lambda yang normalisasi kuat, tanpa perlu menambahkan sistem tipe di atasnya?


5
Pertanyaannya agak tidak fokus: apa yang Anda maksud dengan "mirip dengan"? Apakah automata keadaan terbatas serupa? The kalkulus adalah model universal komputasi, sehingga apa pun yang 'mirip' dengan itu akan mungkin fitur non-terminating bentuk perhitungan. λ
Martin Berger

Jawaban:


22

Saya dapat memikirkan beberapa jawaban yang mungkin datang dari logika linier.

Yang paling sederhana adalah affine lambda-calculus: pertimbangkan hanya istilah lambda di mana setiap variabel muncul paling banyak satu kali. Kondisi ini dipertahankan oleh reduksi dan segera untuk melihat bahwa ukuran suku afin secara ketat menurun dengan setiap langkah reduksi. Oleh karena itu, lambda-kalkulus afin yang tidak diketik sangat normal.

Contoh yang lebih menarik (dalam hal ekspresi) diberikan oleh apa yang disebut "cahaya" lambda-calculi, yang timbul dari subsistem logika linier yang diperkenalkan oleh Girard dalam "Light Linear Logic" (Informasi dan Komputasi 143, 1998), juga sebagai Lafont's "Soft Linear Logic" (Theoretical Computer Science 318, 2004). Ada beberapa batu seperti itu dalam literatur, mungkin referensi yang bagus adalah "Terui lambda lambda kalkulus Terui dan waktu normalisasi kuat polinomial" (Arsip untuk Matematika Logika 46, 2007). Dalam makalah itu, Terui mendefinisikan kalkulus lambda yang berasal dari logika affine yang ringan dan membuktikan hasil normalisasi yang kuat untuknya. Meskipun jenis disebutkan di koran, mereka tidak digunakan dalam bukti normalisasi. Mereka berguna untuk formulasi rapi dari properti utama dari cahaya affine lambda-calculus, yaitu bahwa istilah dari jenis tertentu mewakili tepat fungsi Polytime. Hasil serupa diketahui untuk perhitungan elementer, menggunakan lambda-calculi "ringan" lainnya (makalah Terui berisi referensi lebih lanjut).

Sebagai catatan, menarik untuk mengamati bahwa, dalam istilah bukti-teoretis, affine lambda-calculus berhubungan dengan logika intuitionistic tanpa aturan kontraksi. Grishin mengamati (sebelum logika linier diperkenalkan) bahwa, dengan tidak adanya kontraksi, teori himpunan naif (yaitu, dengan pemahaman tidak terbatas) konsisten (yaitu, paradoks Russel tidak memberikan kontradiksi). Alasannya adalah bahwa cut-eliminasi untuk set-teori naif tanpa kontraksi dapat dibuktikan oleh argumen penurunan ukuran langsung (seperti yang saya berikan di atas) yang tidak bergantung pada kompleksitas formula. Melalui korespondensi Curry-Howard, ini adalah normalisasi dari lambda-kalkulus affine yang tidak diketik. Ini adalah dengan menerjemahkan paradoks Russel dalam logika linier dan dengan "mengutak-atik" modalitas eksponensial sehingga tidak ada kontradiksi yang dapat diturunkan bahwa Girard datang dengan logika linier cahaya. Seperti yang saya sebutkan di atas, dalam istilah komputasi, logika linear cahaya memberikan karakterisasi fungsi yang dapat dihitung waktu polinomial. Dalam istilah teoritik-bukti, teori himpunan naif yang konsisten dapat didefinisikan dalam logika linier cahaya sedemikian rupa sehingga fungsi total yang dapat dibuktikan persis dengan fungsi komputasi waktu polinomial (ada makalah lain oleh Terui tentang ini, "teori himpunan affine ringan: naif menetapkan teori waktu polinomial ", Studia Logica 77, 2004).


Saya akan mengatakan Terui's Light Affine Lambda Calculus diketik, mengingat pembatasan penggunaan variabel affine, biarkan operator dikelompokkan dan monoidalness dari! -Operator. Hanya saja pembatasan ini diperkenalkan secara tidak resmi. LLL Girard juga diketik.
Martin Berger

@ Martin: Saya tidak setuju. Kendala struktural yang dikenakan pada istilah affine ringan memiliki sifat yang berbeda dari yang ada pada sistem pengetikan. Perbedaan terbesar adalah bahwa pengetikan harus induktif sedangkan formasi yang baik (yaitu, stratifikasi, penggunaan affine, dll.) Dapat didefinisikan sebagai properti kombinatorial dari suatu istilah. Jadi, misalnya, ketika Anda mengetik suatu istilah, Anda biasanya harus mengetikkan subtermnya, sedangkan subterm dari suatu istilah yang bertingkat tidak perlu distratifikasi.
Damiano Mazza

Maaf, satu hal lagi tentang LLL Girard: sistemnya diketik karena melibatkan rumus. Namun, seperti yang saya sebutkan dalam jawaban saya, formula tidak memainkan peran sama sekali dalam penghapusan LLL. Bahkan, fixpoints sembarang dari formula dapat ditambahkan (termasuk formula paradoks Russel, yang setara dengan negasinya sendiri!) Tanpa LLL menjadi tidak konsisten. Ini karena cut-elimination berlaku untuk alasan "murni struktural", terlepas dari fakta bahwa Anda dapat melampirkan tipe pada bukti Anda (secara teknis, teorema cut-eliminasi untuk LLL dapat dibuktikan dalam jaring bukti yang tidak diketik).
Damiano Mazza

OK, jika Anda menjadikan induktifitas sebagai kondisi sistem pengetikan. Itu sudut pandang yang menarik yang belum pernah saya temui sebelumnya.
Martin Berger

... dan itu sudut pandang yang menurut saya salah arah. Sebagai contoh, dalam sistem yang melibatkan subtyping (lebih umum, ketika mempertimbangkan interpretasi ekstrinsik jenis dalam arti Reynolds), sangat wajar untuk mengambil pandangan yang koinduktif dalam mengetik. Ada beberapa contoh dalam literatur (meskipun saya pikir ini kurang dihargai).
Noam Zeilberger

12

Makalah asli oleh Church dan Rosser, "Some Properties of Conversion," menjelaskan sesuatu yang mungkin menjadi contoh dari apa yang Anda cari.

λx.MxM

BAmABm

Jadi, meskipun Anda dapat menulis istilah-istilah non-terminasi dalam kalkulus lambda ketat (tidak diketik), setiap istilah dengan bentuk normal menjadi sangat normal; artinya, setiap urutan reduksi akan mencapai bentuk normal yang unik itu.


1
m

Menyelesaikan pernyataan teorema kali ini, terima kasih. Bagian yang saya tulis sebagai [modulo alpha equivalence] pada awalnya "(dalam aplikasi Rule I)" yang artinya sama kecuali saya tidak mengingat Rule I dengan benar.
Rob Simmons

10

Inilah yang menyenangkan, oleh Neil Jones dan Nina Bohr:

λ

λλ

Keuntungan mengetik, tentu saja adalah biaya kompleksitas yang rendah dan modularitas pendekatan: secara umum analisis terminasi sangat non-modular, tetapi mengetik dapat dilakukan "sepotong demi sepotong".


Sangat menarik!
MaiaVictor
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.