Memahami Bukti Normalisasi Kuat dari Kalkulus Konstruksi


9

Saya mengalami kesulitan dalam memahami bukti normalisasi yang kuat untuk kalkulus konstruksi. Saya mencoba mengikuti bukti dalam makalah Herman Geuvers "Sebuah bukti pendek dan fleksibel dari Normalisasi Kuat untuk Kalkulus Konstruksi".

Saya bisa mengikuti jalur utama penalaran dengan baik. Geuvers mengkonstruksi untuk setiap tipe interpretasi berdasarkan beberapa evaluasi variabel tipe . Dan kemudian dia membangun beberapa istilah interpretasi berdasarkan beberapa evaluasi variabel istilah dan membuktikan bahwa untuk evaluasi yang valid pernyataan untuk semua berlaku.T[[T]]ξξ(α)(|M|)ρρ(x)(|M|)ρ[[T]]ξΓM:T

Masalah saya: Untuk tipe yang mudah (seperti tipe sistem F) interpretasi tipe benar-benar seperangkat istilah, jadi pernyataan masuk akal. Tetapi untuk tipe yang lebih kompleks, interpretasi bukanlah seperangkat istilah tetapi seperangkat fungsi dari beberapa ruang fungsi yang sesuai. Saya pikir, saya hampir mengerti konstruksi ruang fungsi, tetapi tidak dapat memberikan makna apa pun pada untuk yang lebih kompleks jenis .[[T]]ξ(|M|)ρ[[T]]ξ[[T]]ξ(|M|)ρ[[T]]ξT

Adakah yang bisa menjelaskan atau memberikan tautan ke beberapa presentasi bukti yang lebih dimengerti?

Sunting: Biarkan saya mencoba untuk membuat pertanyaan lebih jelas. Konteks memiliki deklarasi untuk variabel tipe dan variabel objek. Suatu penilaian tipe adalah valid, jika untuk semua dengan maka valid. Tetapi dapat menjadi elemen dan bukan hanya . Oleh karena itu tidak ada evaluasi istilah yang valid dapat didefinisikan untuk . harus berupa istilah dan bukan fungsi dari ruang fungsi.Γα:A(α:A)ΓΓA:ξ(α)ν(A)ν(A)(SAT)SATρ(α)ρ(α)

Sunting 2: Contoh yang tidak berfungsi

Mari kita membuat derivasi yang valid berikut:

[]:axiom[α:]α:variable introduction[α:]:weaken[](Πα:.):product formation[β:Πα:.]β:(Πα:.)variable introduction

Dalam konteks terakhir evaluasi jenis yang valid harus memenuhi . Untuk jenis evaluasi ini tidak ada evaluasi istilah yang valid.ξ(β)ν(Πα:.)={f|f:SATSAT}


1
Setengah dari orang yang membaca ini akan berpikir bahwa adalah SAT. Anda harus menjelaskan apa itu. Juga, derivasi Anda agak aneh. Baris kedua tidak boleh menyebutkan dalam kesimpulannya, ia harus membaca sesuatu seperti , bukan? α [ α : ] : SATα[α:]:
Andrej Bauer

Saya menggunakan notasi Herman Geuvers (yang tampaknya menjadi standar dalam domain ini). adalah set dari semua set ekspresi lambda jenuh. Untuk baris kedua derivasi saya: Ini aturan pengantar untuk variabel sistem tipe murni. Aturan ini berbunyi mana adalah semacam. Γ T : sSAT sΓT:sΓ,x:Tx:Ts
helmut

Saya mengerti bagaimana Anda mendapatkan baris kedua tetapi itu bukan premis yang benar untuk pembentukan baris ketiga, bukan? Aturan apa yang memberi garis ketiga.
Andrej Bauer

Aturan pembentukan produk PTS mengatakan . Kalkulus konstruksi memiliki aturan . Ini memungkinkan saya menggunakan baris pertama dan kedua untuk mendapatkan yang ketiga. Namun saya memiliki kesalahan ketik pada posting saya. pada baris ketiga telah hilang yang saya tambahkan sekarang r(*,*,*)r(s1,s2,s3;ΓA:s1;Γ,x:AB:s2Γ(Πx:A.B):s3r(,,)
helmut

baris pertama membaca ? Atau apakah Anda mencampuradukkan dan suatu tempat? Baris kedua tidak boleh menjadi premis kedua dari aturan pembentukan produk, karena itu berarti Anda mencoba membentuk sesuatu seperti bukannya . α : . α α : . []:α:.αα:.
Andrej Bauer

Jawaban:


6

Sayangnya, saya tidak yakin ada lebih banyak sumber daya ramah pemula daripada akun Geuvers. Anda dapat mencoba catatan ini dari Chris Casinghino yang memberikan akun beberapa bukti dengan detail yang luar biasa.

Saya tidak yakin saya mengerti inti dari kebingungan Anda, tetapi saya pikir satu hal penting yang perlu diperhatikan, adalah lemma berikut (Corollary 5.2.14), terbukti dalam teks Barendregt klasik :

ΓM:T  ΓT: or 

Ini berarti bahwa sementara dapat berupa beberapa fungsi yang rumit, jika berlaku, maka harus merupakan set istilah .[[T]]ξ Γ M : T [ ΓM:T[[T]]ξ

Ini disindir dalam garis besar (bagian 3.1), di mana hanya jika , yang sejalan dengan harapan kami, yaitu bahwa interpretasi suatu tipe haruslah seperangkat istilah, yaitu (memang, !)(|t|)σ[[T]]ξΓt:T:V()P(Term)V()=SAT

Ini adalah situasi umum dalam teori tipe bahwa meskipun kami hanya tertarik pada "jenis dasar" (di sini ), kami masih harus mendefinisikan semantik untuk hal-hal pada jenis yang lebih tinggi (maka kebutuhan untuk memperkenalkan ). Hal-hal kemudian bekerja pada akhirnya, karena hanya jenis yang dihuni oleh jenis adalah (dan , tapi itu tidak terlalu penting).SAT


1
Terima kasih untuk penjelasannya. Itu memecahkan masalah saya karena tidak memahami fungsi yang digunakan dalam bukti Geuver. Saya sudah curiga membaca dan membaca ulang kertas Geuver, tetapi Anda membuatnya sangat jelas.
helmut
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.