Benarkah menambahkan aksioma ke CIC mungkin memiliki pengaruh negatif dalam konten komputasi dari definisi dan teorema? Saya mengerti bahwa, dalam perilaku normal teori ini, setiap jangka tertutup akan mengurangi ke bentuk normal kanonik nya, misalnya jika benar, maka n harus mengurangi untuk jangka waktu bentuk ( s u c c . . . ( S u c c ( 0 ) ) ) . Tetapi ketika mendalilkan aksioma - katakanlah aksi aksioma ekstensionalitas - kita hanya menambahkan konstanta baru ke sistemfunext
yang hanya akan "secara ajaib" menghasilkan bukti dari bukti Π x : A f ( x ) = g ( x ) , tanpa makna komputasi sama sekali ( dalam arti kita tidak dapat mengekstrak kode apa pun dari mereka? )
Tetapi mengapa ini "buruk"?
Karena funext
, saya membaca di entri coq ini dan pertanyaan ini lebih dari itu akan menyebabkan sistem kehilangan canonicity atau memeriksa decidable. Entri coq tampaknya memberikan contoh yang baik, tetapi saya masih ingin beberapa referensi lagi tentang itu - dan entah bagaimana saya tidak dapat menemukannya.
Bagaimana menambahkan aksioma ekstra dapat menyebabkan CIC memiliki perilaku yang lebih buruk? Setiap contoh praktis akan bagus. (Misalnya, Aksioma Univalensi?) Saya takut pertanyaan ini terlalu lunak, tetapi jika ada yang bisa menjelaskan masalah-masalah itu atau memberi saya beberapa referensi akan hebat!
PS: Entri coq menyebutkan bahwa "Thierry Coquand sudah mengamati bahwa pencocokan pola dengan keluarga intensif tidak konsisten dengan ekstensionalitas pada pertengahan 90-an." Adakah yang tahu di koran mana atau apa?
Prop
dengan Coq proof assistant, yang sesuai dengan pernyataan yang murni logis; Prop-Irrelevance berkorespondensi) untuk mengabaikan struktur internal bukti dari pernyataan-pernyataan itu) adalah sama dapat dilakukan sebagian besar dengan tidak peduli lagi, itu tidak perlu mempengaruhi perhitungan - tetapi perlu dilakukan dengan hati-hati untuk tidak membuat sistem tidak konsisten juga.Untuk memahami mengapa memperluas pembuktian teorema dengan beberapa aksioma dapat menyebabkan masalah, menarik juga untuk melihat kapan hal itu baik untuk dilakukan. Dua kasus muncul dalam pikiran dan keduanya berkaitan dengan fakta bahwa kita tidak peduli dengan perilaku komputasi postulat.
Dalam Teori Jenis Observasional, adalah mungkin untuk mendalilkan bukti dari setiap yang konsisten
Prop
tanpa kehilangan kanonisitas. Memang, semua bukti dianggap sama dan sistem memberlakukan ini dengan sepenuhnya menolak untuk melihat persyaratan. Sebagai akibatnya, fakta bahwa bukti dibangun dengan tangan atau didalilkan tidak ada konsekuensinya. Contoh khas akan menjadi bukti "kohesi": jika kita memiliki buktieq
ituA = B : Type
untukt
jenis apa punA
, dit == coerce A B eq t
manacoerce
hanya mengangkut istilah di sepanjang bukti kesetaraan.Dalam MLTT, seseorang dapat mendalilkan aksioma konsisten negatif tanpa kehilangan kanonisitas . Intuisi di balik ini adalah bahwa aksioma negatif (aksioma bentuk
A -> False
) hanya pernah digunakan untuk memberhentikan cabang yang tidak relevan. Jika aksioma konsisten, maka hanya dapat digunakan di cabang yang memang tidak relevan dan karenanya tidak akan pernah diambil saat mengevaluasi persyaratan.sumber
Contoh praktis aksioma yang berperilaku buruk Anda bertanya, bagaimana dengan ini?
Makalah Coquand yang dimaksud mungkin [1], di mana ia menunjukkan bahwa ITT dependen (teori tipe intuitionistic Martin-Löf) diperluas dengan pencocokan pola memungkinkan Anda membuktikan UIP (aksioma keunikan bukti identitas ). Kemudian Streicher dan Hoffmann [2] menyajikan model dalam ITT yang memalsukan UIP. Oleh karena itu pencocokan pola bukanlah perpanjangan ITT yang konservatif.
T. Coquand, Pencocokan pola dengan tipe dependen .
M. Hofmann, T. Streicher, Interpretasi groupoid dari teori jenis .
sumber