Một thể loại khép kín của bicartesian của các đơn đặt hàng hoàn thành nghiêm ngặt (Hask)


8

Dường như nổi tiếng rằng các ngôn ngữ lập trình không thể có tổng, sản phẩm và không có sự kết hợp với nhau.

Q1 . Điều này có đúng không? Dưới đây (hoặc trong liên kết trên tôi đã đưa ra) là một đối số một phần.

Tuy nhiên, lập trình chung với các điều chỉnh của Hinze bỏ qua vấn đề, ngay cả sau khi thảo luận chính xác phần nào là danh mục liên quan. Cụ thể, ông nói (dường như không cần đặt trước) về việc Haskell được mô hình hóa theo danh mục của các đơn đặt hàng từng phần liên tục nghiêm ngặt và có các khoản tiền và sản phẩm. Nhưng chúng ta biết rằng Haskell không có khoản tiền (phải không?). (Một phần của bài viết sử dụng S e t thay thế, nhưng điều đó không cho phép không chấm dứt).SCpoSet

Q2 Vậy, tôi còn thiếu điều gì? Tôi thấy bốn lựa chọn:

  • Mọi người thường bỏ qua việc không chấm dứt mục đích khi thảo luận về Haskell. Có lẽ bài báo này cũng làm điều đó. Nhưng tại sao người ta lại đề cập đến CPO?
  • Rào cản tôi thảo luận có thể tránh được bằng những cách thông minh. Cụ thể, các mô hình giấy không có chức năng Haskell không nghiêm ngặt bởi các chức năng nghiêm ngặt f : A B , vì các lý do khác.f:ABf:AB
  • Bài báo có đề cập đến giới hạn và tôi đã bỏ lỡ điều đó. Tôi đã dành một số nỗ lực để tìm kiếm đề cập này và không tìm thấy bất kỳ.
  • Đây là một sai lầm thực sự và vì mọi người cứ khẳng định Haskell thực sự thiếu khoản tiền phân loại (như những người khác đồng ý), mặc dù các yêu cầu trên giấy Eitherlà một điều như vậy. Tất cả mọi thứ hoạt động độc đáo thay vì trong các ngôn ngữ tổng thể với các loại quy nạp và cưỡng chế.

Lý lịch

AA×1A×00A

Ví dụ, điều này có nghĩa là danh mục các tập hợp nhọn , với đối tượng bằng 0, không thể đóng bicartesian.

ωCPOCPO

Câu trả lời:


11

Có, không thể có một CCC không phân chia với đệ quy chung và các bản sao phân loại. Tham chiếu tiêu chuẩn cho điều này là:

H. Huwig và A. Poigne. Một lưu ý về sự không nhất quán gây ra bởi các điểm cố định trong danh mục đóng cartesian. Khoa học máy tính lý thuyết, 73: 101 Từ112, 1990.

Tuy nhiên, tôi và (hầu hết những người khác mà tôi đã gặp) đã tìm hiểu về nó từ cuốn Cẩm nang về Lý thuyết miền của Achim Jung và Samson Abramsky , mà họ đã sẵn sàng cung cấp miễn phí.

Hầu hết các danh mục tên miền mà mọi người làm việc cùng là các danh mục con của DCPO, danh mục tên miền và chức năng liên tục trên chúng. Vì các tên miền trước không nhất thiết phải có một điểm cố định ít nhất, nên loại này là bi-CCC, nhưng các điểm cố định chỉ tồn tại cho các chức năng thành các miền.

Trên trang 46 của những ghi chú này, có một bảng lớn cho bạn biết thể loại con nào của các cấu trúc khác nhau của DCPO tồn tại.

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.