Đối với phép tính đã nhập, nếu bạn xem xét các loại âm ( , × , → ), bạn có thể bật hoặc tắt các quy tắc eta về cơ bản theo ý muốn mà không ảnh hưởng đến hợp lưu.1×→
Đối với các loại tích cực (tổng và các cặp với loại bỏ khớp mẫu), tình huống phức tạp hơn nhiều. Về cơ bản, câu hỏi là liệu thuật ngữ này có hình thức loại bỏ phạm vi khép kín hay không, cho phép các bối cảnh tương tác theo những cách phức tạp với mở rộng eta. Ví dụ: nếu có loại A × B , thì mở rộng eta của nó là l e teA×B . Nhưng để có được những lý thuyết equational một loại lý luận mong đợi, bạn cần phải xem xét bối cảnh C [ - ] , và khái quát phương trình là C [ e ] ≡ l đ tlet(a,b)=ein(a,b)C[−] (với các giới hạn phạm vi dự kiến).C[e]≡let(a,b)=einC[(a,b)]
Tôi nghĩ rằng bạn vẫn có thể chứng minh kết quả hợp lưu nếu bạn không cho phép chuyển đổi đi lại. Nhưng đây là tin đồn - tôi chưa bao giờ thử nó, cũng không nhìn vào các tài liệu ghi lại nó.
Mặc dù vậy, tôi thực sự không biết bất cứ điều gì về phép tính lambda chưa được kiểm tra.
EDIT: Charles hỏi về giảm eta. Điều này đầy hứa hẹn cho loại ví dụ mà anh ta tìm kiếm, bởi vì tôi nghĩ nói chung họ sẽ không đủ mạnh để mô hình hóa lý thuyết bình đẳng đầy đủ, mà tôi sẽ minh họa bằng một ví dụ đơn giản liên quan đến booleans. Các eta-mở rộng cho các phép toán luận là . (Tất nhiên, giảm eta là hướng khác.)C[e]↦if(e,C[true],C[false])
Bây giờ, hãy xem xét thuật ngữ . Cho thấy thuật ngữ này tương đương với i f ( e , fif(e,f,g)if(e,x,y) cần phải đi qua một eta-mở rộng, bởi vì chúng ta phải thay thế các điện tử trong một trong những if-then-elses với t r u e và f một l s e để lái β -reduction. if(e,fx,gy)etruefalseβ