Hệ thống phân cấp Ackerman cho đệ quy nguyên thủy bậc cao trong System T


8

Gödel định nghĩa trong đệ quy nguyên thủy System T của mình đối với các loại cao hơn. Tôi đã tìm thấy các ghi chú từ Girard nơi anh ta giải thích việc triển khai Hệ thống T trên đầu trang của phép tính lambda được gõ đơn giản. Ở trang 50, ông đề cập rằng một khi chúng ta sử dụng nhiều loại hơn trong trình duyệt, chúng ta sẽ có được sức mạnh biểu cảm hơn với hệ thống.

Tôi không hiểu chính xác điều này xảy ra như thế nào. Có thể đưa ra loại phân cấp Ackermann với đệ quy nguyên thủy bậc cao hơn, tức là một hệ thống phân cấp của các hàm tăng trưởng nhanh hơn và nhanh hơn trong đó mỗi hàm có thể biểu thị trong Hệ thống T nhưng đường chéo thì không? Tôi đoán vậy, nhưng việc xây dựng dường như không rõ ràng đối với tôi và tôi sẽ thích thú khi thấy người ta sẽ xây dựng nó như thế nào, hoặc nhận được con trỏ đến văn học.

Tôi đang theo một cái gì đó cụ thể. Tôi biết về đối số đường chéo chung chứng minh sự tồn tại của một hàm không có trong T, nhưng tôi muốn xem làm thế nào một người sẽ thực sự "bước lên trong hệ thống phân cấp kiểu".


2
Đó là một câu hỏi hay. Tôi đặt cược thứ bậc theo thứ hạng của loại đệ quy xảy ra. Nó gần như đáng để viết lên. Tôi sẽ trở lại đây nếu tôi có thời gian để làm điều đó.
Andrej Bauer

@AndrejBauer Tôi đã suy nghĩ về điều này và tôi đoán rằng người ta có thể xây dựng các trình vòng lặp mới với các mức cao hơn trên hệ thống phân cấp loại và thực hiện phân cấp phát triển nhanh theo . Có lẽ các mức loại tương ứng (với một số bù) với chiều cao của số mũ trên trên hệ thống phân cấp, nhưng tôi chưa thể rút ra bằng chứng (..yet). fϵ0ωω...

Nhân tiện, làm thế nào để bạn hình dung mức độ đệ quy tiếp theo sau đệ quy nguyên thủy? Nếu nó ở loại cao hơn, thì bạn sẽ sống đệ quy chung (để chúng ta không bị chấm dứt), hoặc một loại đệ quy nào đó vẫn giữ cho mọi thứ chấm dứt (trong trường hợp nào, nó sẽ là gì)?
Andrej Bauer

@AndrejBauer Tôi tin rằng điều này có thể được tiếp cận khi xác định các trình vòng lặp. (Tôi đang sử dụng các hàm lý thuyết số thay vì lambda-tính toán.) Ví dụ , và xác định , (S là người kế vị) trong đó , . Bây giờ nên so sánh với . Truy cập cho có vẻ khả thi, nhưng có vẻ khó khăn. Sau khi nhận đượcI(f,0)=f(1)I(f,n+1)=f(I(f,n))g(0)=Sg(n)=I(g(n1))g:N×NNNNf:NNh(n)=g(n)(n)fωfωnnNfωωfωωTôi hy vọng mọi thứ sẽ rõ ràng.

Các ví dụ của bạn và vẫn nằm trong đoạn System T. Ig
Andrej Bauer

Câu trả lời:


1

(Đây là một câu trả lời rất riêng, chỉ giải quyết điểm đầu tiên chứ không phải câu hỏi chính về hệ thống phân cấp.)

Tôi không có bằng chứng để chỉ ra cho bạn, nhưng ý tưởng là một người nhận đơn hàng đầu tiên trên các tự nhiên như

rec:(natnat)natnatnatrec fzn=f(f(f(z)))(n times f)

sẽ ít mạnh hơn nhiều so với sơ đồ đệ quy đầy đủ (nguyên thủy)

recU:(UU)UnatU

do sản phẩm sau khoảng tương tự như một thuật ngữ đa hình trong hệ thống F, có thể được sử dụng ở nhiều loại .U

Thật vậy, cơ bản chỉ cung cấp cho chúng ta quyền truy cập vào sơ đồ đệ quy nguyên thủy bậc nhất, như chúng ta có thể tìm thấy trong một cuốn sách lý thuyết tính toán / đệ quy. Chỉ với điều đó, chúng tôi biết các chức năng như Ackermann không thể xác định được. (Chà, điều này không rõ ràng vì ở đây chúng ta cũng có lambdas bậc cao, nó chỉ là đệ quy bị hạn chế. Nhưng dù sao thì cũng nên đứng vững.)rec

Với chương trình, thay vào đó, chúng ta có thể chọn , cho phép chúng ta xác định chức năng Ackermann, như chương trình Girard trong cuốn sách đề cập bởi OP. Do đó, chương trình này mạnh hơn nhiều.recUU=natnat


1

Đây là một câu hỏi thú vị, mà câu trả lời của nó hoàn toàn không tầm thường.

Tôi sẽ đưa ra câu trả lời ngắn trước: Có một hệ thống phân cấp, gọi chúng là , trong đó các quy duy nhất được phép là với thứ tự là , trong đó thứ tự của một loại được xác định là :TkrecUUk

ord(nat)=0
ord(UV)=max(ord(V),ord(U)+1)

Sau đó, định lý là:

Định lý : với mọi , có một thuật ngữ , sao choktk:natnat

  • Tktk:natnat

  • Tk1tk:natnat

tk phát triển nhanh hơn (như một hàm từ ) so với bất kỳ hàm nào có thể xác định được trong , với .NNTll<k

Lưu ý rằng .T=kTk

Bước đầu tiên, có thể hữu ích khi lưu ý rằng hàm Ackermann có thể được định nghĩa như thế này (như được gợi ý bởi câu trả lời của chi ): modulo một lỗi của tôi.

ack(n,m)=recnatnat(λf.recnat f 0 m) (λp.S p) n

Điều này thực sự gợi ý rằng có thêm "sức mạnh".recnatnat


Nhưng làm thế nào để chúng ta đi hết tháp lên tùy ý ?Tk

Bí quyết là xem xét một sự tương ứng ba giữa:

1) Thông thường bên dướiε0

2) Các đoạn của của số học Heyting trong đó cảm ứng được giới hạn trong các câu lệnh có ít hơn xen kẽ định lượng.HAkk

3) Chức năng có thể xác định trongTk

Đối với mỗi thứ tự trong đó tháp có chiều cao , có thể xem xét một bằng chứng trong số học Heyting rằng một số thứ tự như vậy là có cơ sở, và để trích xuất từ đó một thuật ngữ đánh máy trong hệ thống tương ứng với hàm trong hệ thống phân cấp Grzegorchot .λk=ωωωktkTkgλk

Một thuật ngữ như vậy không thể được gõ tốt trong do sự tương ứng được nêu ở trên và thực tế là không chứng minh được sự thành lập tốt của .Tk1HAk1λk

Nói dối và tham khảo :

Sự tương ứng giữa , và không hoàn toàn sạch như tôi đề xuất, thực sự nên có , và , mỗi liên quan bởi một hằng số cụ thể.TkHAkλkkkk

Cấu trúc rõ ràng cho dọc theo đường dẫn được nêu ở trên được đưa ra bởi Ulrich Berger trong Trích xuất chương trình từ Chứng minh cảm ứng xuyên biên giới của Gentzen cho đến tkε0

Tôi e rằng tôi không có tài liệu tham khảo về sự tương ứng ba lần tốt hơn Bằng chứng và Loại , mặc dù tôi sẽ rất vui khi nghe về một.

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.