Lambda Compus là một loại hệ thống Viết thuật ngữ cụ thể như thế nào?


12

Bây giờ chúng ta có thể thấy rằng Giáo Hội được kết hợp với các Đơn giản chỉ cầnLambda Calculus . Thật vậy, có vẻ như ông đã giải thích Công cụ tính toán Lambda đơn giản để giảm sự hiểu lầm về Công cụ tính toán Lambda.

Bây giờ khi John McCarthy tạo ra Lisp - ông đã dựa trên Công cụ tính toán Lambda . Điều này là do chính anh ta thừa nhận khi anh ta xuất bản "Các hàm đệ quy của biểu thức tượng trưng và tính toán của chúng bằng máy, Phần I" . Bạn có thể đọc nó ở đây .

Bây giờ chúng ta biết rằng cốt lõi của Mathematica là một hệ thống giống như Lisp , nhưng thay vì hoàn toàn dựa trên Công cụ tính toán Lambda, nó dựa trên một hệ thống viết lại thuật ngữ .

Ở đây tác giả nêu rõ:

Mathematica về cơ bản là một hệ thống viết lại thuật ngữ ... một khái niệm tổng quát hơn so với tính toán Lambda đằng sau Lisp.

Có vẻ như Lambda Tính là một phần nhỏ của một thể loại tổng quát hơn nhiều. (Khá mở mắt khi nghĩ rằng đây là một khái niệm nền tảng). Tôi đang cố gắng đọc thêm về điều này để có được một số quan điểm về nó.

Câu hỏi của tôi là: Lambda Compus là một loại hệ thống Viết thuật ngữ cụ thể như thế nào?

Câu trả lời:


14

Câu trả lời là nó phụ thuộc vào ý của bạn bởi Hệ thống Viết lại Thuật ngữ .

Khi được giới thiệu, khái niệm Hệ thống Viết lại Thuật ngữ , hoặc TRSes, đã mô tả cái được gọi là TRS thứ tự đầu tiên , đơn giản là một tập hợp các quy tắc tính toán của biểu mẫu

lr

Trong đó rcác điều khoản đặt hàng đầu tiên của mẫulr

t:= x  f(t1,,tn)

nơi là một biến và f là một biểu tượng chức năng lấy từ một số tùy ý, nhưng cố định bộ Σ , được gọi là chữ ký , mà cũng sửa chữa một số lập luận cho mỗi f Σ .xfΣfΣ

Có một vài hạn chế chung đối với quy tắc, ví dụ như nhưng chúng tôi không cần phải đi vào chúng ở đây.Var(r)Var(l)

β

(λx.t) ut[u/x]
λxtλ

SKΣ={S, K,app}

app(app(K,x),y)x
app(app(app(S,x),y),z)app(app(x,z),app(y,z))

Có một cách mã hóa trực quan hơn khác liên quan đến các thuật ngữ lambda với các chỉ số de Bruijn và các thay thế rõ ràng, nhưng tôi sẽ không đi sâu vào đây.


λ

t := x(t1,,tn)  f(x11xi11.t1,,x1nxinn.tn)

fΣxjitiabs(x.t)λx.t

βηβ

Do đó, các cạnh bên trái bị hạn chế ở một số tập hợp con đẹp, thường là "mẫu Miller". Một số kết quả cho trường hợp đặt hàng đầu tiên khái quát, mặc dù có một vài bất ngờ khó chịu.

λ βη

λβ

app(abs(x.y(x)),z)y(z)

Một tổng quan khá tốt về các định nghĩa và kết quả cơ bản được đưa ra bởi Nipkow và Prehofer ở đây .


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.