Sự khác biệt của việc gọi -calculus là đại số thay vì tính toán là gì? Tôi nêu câu hỏi này bởi vì tôi đã đọc ở đâu đó dòng " -calculus không phải là một phép tính mà là một đại số" (iirc, quy cho Dana Scott). Điểm là gì? Cảm ơn.λ
Sự khác biệt của việc gọi -calculus là đại số thay vì tính toán là gì? Tôi nêu câu hỏi này bởi vì tôi đã đọc ở đâu đó dòng " -calculus không phải là một phép tính mà là một đại số" (iirc, quy cho Dana Scott). Điểm là gì? Cảm ơn.λ
Câu trả lời:
Một phép tính là một hệ thống tính toán dựa trên sự thao túng các biểu thức tượng trưng. Đại số là một hệ thống các biểu thức và quan hệ tượng trưng giữa chúng [*]. Nghĩa là, một phép tính là một hệ thống để tìm ra câu trả lời và đại số là một cách để thể hiện mối quan hệ giữa các thuật ngữ.
Các -calculus hoặc là một tính toán hay một đại số, tùy thuộc vào việc bạn muốn suy nghĩ của β và η quy tắc như quy tắc giảm theo định hướng hoặc phương trình unoriented. Nếu bạn nghĩ về các quy tắc như được định hướng, thì bạn đã sửa một thứ tự đánh giá và các quy tắc cho bạn biết cách lấy một thuật ngữ và tạo ra một hình thức bình thường. Nếu bạn nghĩ rằng các quy tắc như là unoriented, sau đó họ cung cấp cho bạn những mối quan hệ bình đẳng về λ -terms.
[*] Ngoài ra còn có một định nghĩa phân loại của đại số, đó là một định nghĩa chính thức có phần hạn chế hơn so với ý tưởng không chính thức. Nói một cách lỏng lẻo, sự khác biệt là định nghĩa chính thức của đại số chỉ bao gồm các hệ thống mà không có ràng buộc biến. Vì vậy, SKI combinators tạo thành một đại số, nhưng các -calculus không.
Theo truyền thống, đại số là một sóng mang được thiết lập với các phép toán thỏa mãn một số phương trình (nghĩ là "nhóm"). Có nhiều cách để khái niệm có thể được khái quát hóa:
Có một định nghĩa khá chính xác về đại số là gì trong lý thuyết thể loại: xem bài viết này chẳng hạn. Phải mất vài năm để hiểu làm thế nào một cấu trúc với các biến ràng buộc có thể được hiểu trong cùng bối cảnh với thuật ngữ cấu trúc đại số thường được sử dụng trong toán học và khoa học máy tính, và hóa ra khái niệm phân loại của F-algebras có khả năng thống nhất hai. Tôi không chắc chắn về các khía cạnh lịch sử của giải pháp nhưng một cách tiếp cận có thể là các đại số presheaf được giới thiệu bởi Fiore, Plotkin và Turi (có sẵn ở đây ) giải quyết câu hỏi và thúc đẩy các cách tiếp cận khác nhau nhưng tương tự, xem ví dụ Hirshowitz et al. và sinh viên phd của mình Julianna Zsido .
Mặc dù đúng là khái niệm "tính toán" ít được xác định rõ hơn so với khái niệm "đại số", nhưng rộng rãi "tính toán" thường bao hàm một quá trình tính toán, trong khi đại số có mô hình xây dựng với các lý thuyết phương trình.
Bạn có thể nói có nhiều cảm giác rằng đại số "đã tồn tại" dưới dạng cấu trúc và chúng tôi chỉ đơn thuần phát hiện ra sự thật về chúng, thay vì sử dụng một số phương pháp để đưa ra câu trả lời mới không tồn tại trước đó.
Nếu bạn nghĩ về những gì Scott đã cố gắng thực hiện với các miền Scott, câu nói của anh ta có ý nghĩa: anh ta đang cố gắng tìm các cấu trúc toán học và đại số được xác định trước sẽ phục vụ như một ngữ nghĩa cố định cho LC. Ông muốn loại bỏ cảm giác rằng ý nghĩa của một thuật ngữ là bất cứ điều gì xảy ra từ một quá trình cụ thể.
Bạn có thể quan tâm đến một câu trả lời trước đó về một câu hỏi liên quan: Điều gì tạo nên ngữ nghĩa biểu thị?
Nếu Scott đã từng gọi lambda tính toán là "đại số" (mà tôi khá nghi ngờ), thì anh ta đã có thể đưa ra một quan điểm khá tinh tế, viz., Rằng bạn có thể nghĩ rằng lambda tính toán có ý nghĩa tiên nghiệm .
Tuy nhiên, anh ta sẽ có một thời gian khó thuyết phục bất kỳ nhà đại số nào về yêu cầu của mình, bởi vì anh ta không có phương trình trong phép tính lambda, anh ta có các tương đương (tức là ở cấp độ meta). "Đại số kết hợp", mặt khác, là hoàn toàn bình thường.
Không có thứ gọi là phép tính , nhưng có một đối tượng toán học được xác định rõ gọi là đại số , mặc dù từ này có nhiều cách sử dụng . Tuy nhiên, tôi đoán là cái tên được đặt theo nghĩa
(...) Nghiên cứu trừu tượng về các hệ thống số và hoạt động trong đó.