Trực giác đằng sau tính tích cực nghiêm ngặt?


10

Tôi tự hỏi liệu ai đó có thể cho tôi trực giác đằng sau lý do tại sao tính tích cực nghiêm ngặt của các loại dữ liệu quy nạp đảm bảo chuẩn hóa mạnh mẽ.

Để rõ ràng, tôi thấy làm thế nào có sự xuất hiện tiêu cực dẫn đến phân kỳ, tức là bằng cách xác định:

data X where Intro : (X->X) -> X

chúng ta có thể viết một hàm phân kỳ.

Nhưng tôi tự hỏi, làm thế nào chúng ta có thể chứng minh rằng các loại quy nạp tích cực nghiêm ngặt không cho phép phân kỳ? tức là có một số biện pháp cảm ứng cho phép chúng ta xây dựng một bằng chứng về chuẩn hóa mạnh (sử dụng các quan hệ logic hoặc tương tự)? Và một bằng chứng như vậy bị phá vỡ cho những trường hợp tiêu cực? Có bất kỳ tài liệu tham khảo tốt nào cho thấy sự chuẩn hóa mạnh mẽ cho một ngôn ngữ với các loại quy nạp không?


Tôi nghĩ rằng ý tưởng là loại tích cực hoàn toàn có thể chuyển đổi sang loại W, về mặt khái niệm. Ngoài ra loại không tích cực không tích cực không phù hợp với Coq vilhelms.github.io/posts/ . Có ý kiến ​​cho rằng loại tích cực phù hợp với Agda, nhưng tôi cũng muốn xem một lời giải thích về khái niệm ...
molikto

@molikto Cảm ơn, điều đó hữu ích. Nhưng tôi nghĩ rằng các loại W không đưa ra các nguyên tắc cảm ứng mong muốn trong một lý thuyết chuyên sâu? Làm thế nào chúng ta có thể chứng minh sự bình thường hóa mạnh mẽ cho các cảm ứng tích cực nghiêm ngặt trong một lý thuyết cường độ cao?
jmite

Câu trả lời:


8

Có vẻ như bạn muốn có một cái nhìn tổng quan về các đối số chuẩn hóa cho các hệ thống kiểu với các kiểu dữ liệu dương. Tôi muốn giới thiệu luận án tiến sĩ của Nax Mendler: http://www.nuprl.org/document/Mendler/IndativeDefDef.html .

Như ngày cho thấy, đây là công việc khá cổ điển. Trực giác cơ bản là một thứ λ có thể liên quan đến bất kỳ yếu tố của một loại quy nạp tích cực, ví dụ như cho các kiểu dữ liệu

Inductive Ord = Zero : Ord | Suc : Ord -> Ord | Lim : (Nat -> Ord) -> Ord

Chúng tôi sẽ nhận được:

λ(t)=0
nếut là một hình thức bình thường mà không phải là một constructor
λ(Zero)=0
λ(Suc(o))=λ(o)+1
λ(Lim(f))=supnλ(f n)

Trong đó phạm vi trên các điều khoản với các hình thức bình thường. Thông báo trước là cách giải thích này chỉ được xác định trong trường hợp thứ 3 khi cũng có dạng bình thường, điều này đòi hỏi một số lưu ý trong các định nghĩa.nf n

Sau đó, người ta có thể định nghĩa các hàm đệ quy bằng cách cảm ứng trên thứ tự này.

Lưu ý rằng các loại dữ liệu này có thể được xác định trong lý thuyết tập hợp cổ điển, như được chỉ ra trong bài viết Gia đình quy nạp xuất sắc của Dybjer ( http://www.cse.chalmers.se/~peterd/ con / Inuctor_Famflower.pdf ). Tuy nhiên, vì các không gian chức năng rất lớn, nên các kiểu như Ordyêu cầu các quy tắc thực sự lớn để diễn giải.


Cảm ơn, điều này rất hữu ích! Bạn có biết nếu các thứ tự như vậy có thể được định nghĩa trong chính lý thuyết loại? tức là nếu tôi đang cố gắng sử dụng Agda để đệ quy cảm ứng để mô hình hóa một lý thuyết loại với các cuộn cảm (nhưng không có đệ quy cảm ứng), tôi có thể sử dụng một cái gì đó như Ordđể mô hình hóa các quy tắc cần thiết để thể hiện sự thành lập tốt không?
jmite

@jmite, bạn có thể, nhưng các quy tắc trong các lý thuyết xây dựng hơi lạ, và bạn cũng có thể làm việc với các đơn đặt hàng hoặc cây được thành lập tốt ( kiểu la W như molikto gợi ý). Có thể khó có một loại đồng phục duy nhất nắm bắt được sự thành lập của mọi quy nạp trong ngôn ngữ đối tượng mặc dù ...
cody

1
@cody Không phải là ví dụ Ord mà bạn đưa ra một loại tích cực đúng không?
Henning Basold

1
@HenningBasold đúng vậy (đó là lý do tại sao tôi sử dụng nó làm hình minh họa!). Nhưng nó không hoạt động chính xác như các mệnh lệnh trong một lý thuyết tập hợp (cổ điển), và chắc chắn không giống như tập hợp của tất cả các quy tắc. Cụ thể, hơi khó để xác định một đơn đặt hàng trên những thứ này.
cody

1
@HenningBasold tôi cũng cần lưu ý rằng câu hỏi của jmite là về các loại tích cực cụ thể, mặc dù thông tin về cài đặt chung hơn cũng rất thú vị!
cody

6

Một nguồn tốt khác để vượt ra ngoài các loại tích cực nghiêm ngặt là luận án tiến sĩ của Ralph Matthes: http://d-nb.info/956895891

Ông thảo luận về các phần mở rộng của Hệ thống F với các loại tích cực (nghiêm túc) trong chương 3 và chứng minh nhiều kết quả chuẩn hóa mạnh mẽ trong chương 9. Có một vài ý tưởng thú vị được thảo luận trong chương 3.

  1. ρααβ.(αβ)ρρ[β/α]

  2. Khi chúng ta chuyển từ loại tích cực nghiêm ngặt sang loại tích cực, thì loại cảm ứng có thể được xem là cây nữa (mã hóa loại W). Thay vào đó, chúng giới thiệu một số hình thức không phù hợp bởi vì việc xây dựng một loại quy nạp tích cực đã định lượng trên chính loại đó. Lưu ý rằng đây là một hình thức nhẹ nhàng của sự thiếu sót, vì ngữ nghĩa của các loại như vậy vẫn có thể được giải thích theo cách lặp thứ tự của các hàm đơn điệu.

  3. Matthes cũng cung cấp một số ví dụ về các loại quy nạp tích cực. Đặc biệt thú vị là

    • μ.1+((αρ)ρ)αρ
    • μαβ.(αβ)ρ[β/α]ρ

λμ

Tôi hy vọng rằng điều này sẽ giúp với câu hỏi của bạn.

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.