Tại sao không thể tuyên bố một nguyên tắc cảm ứng cho các số của Giáo hội


17

Hãy tưởng tượng, chúng tôi đã định nghĩa các số tự nhiên trong phép tính lambda phụ thuộc vào số của Giáo hội. Chúng có thể được định nghĩa theo cách sau:

SimpleNat = (R : Set) → R → (R → R) → R

zero : SimpleNat
zero = λ R z _ → z

suc : SimpleNat → SimpleNat
suc sn = λ R z s → s (sn R z s)

SimpleNatRec : (R : Set) → R → (R → R) → SimpleNat → R
SimpleNatRec R z s sn = sn R z s

Tuy nhiên, dường như chúng ta không thể định nghĩa các chữ số của Giáo hội theo loại nguyên tắc quy nạp sau:

NatInd : (C : Nat -> Set) -> (C zero) -> ((n : Nat) -> C n -> C (suc n)) -> (n : Nat) -> (C n)

Tại sao nó như vậy? Làm thế nào tôi có thể chứng minh điều này? Có vẻ như vấn đề là với việc xác định một loại cho Nat sẽ trở thành đệ quy. Có thể sửa đổi tính toán lambda để cho phép điều này?

Câu trả lời:


20

Câu hỏi bạn đang hỏi là thú vị và được biết đến. Bạn đang sử dụng cái gọi là mã hóa tạm thời của các số tự nhiên. Hãy để tôi giải thích một chút về nền tảng.

Cho một hàm tạo kiểu , chúng ta có thể quan tâm đến loại "tối thiểu" A thỏa mãn A T ( A ) . Về mặt lý thuyết phạm trù T là một functor và Achữ T ban đầu . Ví dụ: nếu T ( X ) = 1 + X thì A tương ứng với các số tự nhiên. Nếu T ( X ) = 1 +T:TypeTypeAAT(A)TATT(X)=1+XA thì A là loại cây nhị phân hữu hạn.T(X)=1+X×XA

Một ý tưởng với lịch sử lâu đời là ban đầu -algebra là loại A : = Π X : T y p e ( T ( X ) X ) X . (Bạn đang sử dụng ký hiệu Agda cho các sản phẩm phụ thuộc, nhưng tôi đang sử dụng ký hiệu toán học truyền thống hơn.) Tại sao phải như vậy? Vâng, Một yếu mã hóa theo nguyên tắc đệ quy cho ban đầu T -algebra: đưa ra bất kỳ T -algebra Y với một cấu trúc cấu xạ f : T ( YT

A:=X:Type(T(X)X)X.
ATTY , chúng tôi nhận được một đại số đồng cấu φ : Một Y bởi φ ( một ) = mộtf:T(Y)Yϕ:AY Vì vậy, chúng tôi thấy rằng Ayếuban đầu chắc chắn. Đối với nó được ban đầu chúng ta sẽ phải biết rằng φ là duy nhất. Điều này không đúng nếu không có giả định thêm, nhưng các chi tiết mang tính kỹ thuật và khó chịu và yêu cầu đọc một số tài liệu nền. Ví dụ, nếu chúng ta có thể hiển thị mộtđịnh lý tham số thỏa đángthì chúng ta sẽ thắng, nhưng cũng có các phương pháp khác (chẳng hạn như xoa bóp định nghĩa của A và giả sửtính mở rộng K -axiom và hàm).
ϕ(a)=aYf.
AϕAK

T(X)=1+X

Nat=X:Type((1+X)X)X=X:Type(X×(XX))X=X:TypeX(XX)X.

Câu trả lời tehcnical cho câu hỏi của bạn là thế này: tồn tại các mô hình lý thuyết loại trong đó loại SimpleNatchứa các yếu tố kỳ lạ không tương ứng với chữ số, và hơn nữa, các yếu tố này phá vỡ nguyên tắc cảm ứng. Loại SimpleNattrong các mô hình này là quá lớn và chỉ là một đại số ban đầu yếu .


8
Tôi đồng ý rằng câu trả lời là rất hay, nhưng một vài tài liệu tham khảo có thể hữu ích ở đây: bài viết của Geuvers về tính không dẫn xuất của cảm ứng và bài viết của Neel K's và Derek Dreyer về việc nhận (một số) cảm ứng từ tham số . Tôi không biết một bài báo tìm hiểu đầy đủ về mối quan hệ.
cody

Tôi không quá mạnh về các tài liệu tham khảo trong lĩnh vực này, cảm ơn @cody!
Andrej Bauer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.