Có một tính toán SKI đánh máy?


26

Hầu hết chúng ta đều biết sự tương ứng giữa logic kết hợpphép tính lambda . Nhưng tôi chưa bao giờ thấy (có lẽ tôi chưa nhìn đủ sâu) tương đương với "tổ hợp đánh máy", tương ứng với phép tính lambda được gõ đơn giản. Liệu những điều như vậy tồn tại? Nơi nào người ta có thể tìm thấy thông tin về nó?


Bạn có thể quan tâm đến The Reader Monad và Trừu tượng loại bỏ trong The Monad.Reader, Số 17 . Đơn vị Reader (hay chính xác hơn là functor ứng dụng của nó) có liên quan chặt chẽ với SKI đã gõ.
Petr Pudlák

Câu trả lời:


18

Sự hoàn thiện biểu cảm của các tổ hợp đánh máy so với phép tính lambda được gõ đơn giản đã được chứng minh . Đối với mỗi tổ hợp chưa được đánh dấu, người ta cần cả một tổ hợp các tổ hợp đánh máy. Ví dụ, một người có

  • tôiαα
  • Kα(βα)
  • Sα(βγ)(αβ(αγ))

cho tất cả các kết hợp của các loại đơn giản γ .α,βγ

Ngoài ra, chỉ cần nghĩ về các loại như sơ đồ loại (hoặc loại đa hình) và nhập chúng vào Haskell và voila: tổ hợp .


S

S<*>pureK

SSmộtpΛX.αX
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.