Lý thuyết hình thái

Trong toán học, logic và khoa học máy tính, một lý thuyết hình thái hoặc một hệ hình thái là một hệ thống hình thức trong đó mọi đối tượng đều có một hình thái (hay mọi "biến" đều có một "kiểu", mọi "từ" đều có một "loại"...). Hình thái của một đối tượng hạn chế các "tác động" (hay "phép toán", "cách dùng") có thể được thực hiện trên đối tượng (hay "biến", "từ") ấy. Ngành nghiên cứu các hệ hình thái cũng được gọi là Lý thuyết Hình Thái.

Một số lý thuyết hình thái có thể đóng vai trò thay thế lý thuyết tập hợp để làm nền tảng cho toán học. Hai lý thuyết như vậy khá nổi tiếng là lý thuyết phép tính lambda hình thái của Alonzo và lý thuyết hình thái trực giác của Per Martin-Löf.

Giống như các lý thuyết tập hợp tiên đề, lý thuyết hình thái được tạo ra để tránh những nghịch lý trong các nền tảng trước đây của toán học như lý thuyết tập hợp ngây thơ, logic hình thức.

Lý thuyết hình thái có quan hệ chặt chẽ với, và đôi khi trùng lặp với, hệ thống kiểu trong khoa học máy tính.

== Lịch sử ==
Trong khoảng thời gian từ năm 1902 đến năm 1908, Bertrand Russell đã đề xuất nhiều "lý thuyết hình thái" khác nhau để giải quyết vấn đề mà chính ông trước đó khám phá ra: rằng phiên bản lý thuyết tập ngây thơ của Gottlob Frege bị ảnh hưởng bởi nghịch lý Russell.

== Các khái niệm cơ bản ==
Trong phần tiếp theo, "từ" và "đối tượng" mang cùng một nghĩa; "loại" và "hình thái" mang cùng một nghĩa.

Trong một hệ hình thái, mỗi từ có một loại. Ví dụ, formula_1, formula_2 và formula_3 là các từ phân biệt đều có loại formula_4 của các số tự nhiên. Theo truyền thống, loại của từ được viết sau dấu hai chấm, chẳng hạn như formula_5 nghĩa là số formula_6 có loại formula_4.

Các hệ hình thái có các phép tính tường minh được thể hiện qua các luật viết lại. Các luật viết lại này được gọi là quy tắc chuyển đổi hoặc, nếu luật chỉ hoạt động theo một chiều, quy tắc rút gọn. Ví dụ, formula_8 và formula_1 là những từ khác nhau về mặt cú pháp, nhưng từ đầu tiên có thể được rút gọn thành từ thứ hai. Phép rút gọn này được viết là formula_10.

Các hàm trong hệ hình thái có một quy tắc rút gọn đặc biệt: một biến xuất hiện trong định nghĩa hàm sẽ được thay thế bởi đối số tương ứng. Giả sử hàm formula_11 được định nghĩa là formula_12. Phép gọi hàm formula_13 sẽ được rút gọn bằng cách thay thế formula_6 cho mọi formula_15 trong định nghĩa hàm. Như vậy ta có phép rút gọn formula_16.

Loại hàm được ký hiệu bằng một mũi tên formula_17 từ loại tham số đến loại trả về của hàm. Như vậy, ta viết formula_18 (tức là, formula_11 là một "từ", "loại" của nó là formula_20, tức là nó là một hàm lấy vào một từ của loại các số tự nhiên, và cho ra một từ của loại các số tự nhiên).

== Khác biệt với lý thuyết tập hợp ==
Có nhiều lý thuyết tập hợp khác nhau và nhiều hệ thống khác nhau của lý thuyết hình thái. Tuy nhiên, ta có thể nêu ra một số nhận xét chung.

- Lý thuyết tập hợp được xây dựng trên nền tảng logic. Nó đòi hỏi một hệ thống riêng như logic vị từ bên dưới nó. Trong lý thuyết hình thái, các khái niệm như "và" và "hoặc" có thể được mã hóa thành các "hình thái". Tức là, lý thuyết hình thái có thể làm nền tảng cho logic.
- Trong lý thuyết tập hợp, một phần tử có thể là phần tử của nhiều tập hợp. Trong lý thuyết hình thái, mỗi đối tượng chỉ thuộc về một hình thái.
- Lý thuyết tập hợp thường mã hóa các số dưới dạng tập hợp. (0 là tập hợp rỗng, 1 là tập hợp chứa tập hợp rỗng, v.v.) Lý thuyết hình thái có thể mã hóa các số dưới dạng các hàm, sử dụng mã hóa Church hoặc tự nhiên hơn là các hình thái quy nạp.
- Lý thuyết hình thái có quan hệ gần với toán học xây dựng thông qua diễn giải BHK. Nó có thể được kết nối với logic bởi đẳng cấu Curry Howard. Một số lý thuyết hình thái có quan hệ chặt chẽ với lý thuyết phạm trù.

== Tính chất khác ==
=== Chuẩn hóa ===
Từ formula_21 được rút gọn về formula_22. Từ formula_22 không thể được rút gọn hơn nữa, nó được gọi là một dạng chuẩn. Một hệ hình thái được gọi là "chuẩn hóa mạnh" nếu tất cả các từ đều có dạng chuẩn và bất kỳ một dãy các phép rút gọn nào đều sẽ dẫn đến dạng chuẩn. Các hệ "chuẩn hóa yếu" là các hệ có dạng chuẩn, tuy nhiên các phép rút gọn có thể tạo thành vòng lặp và không dẫn đến dạng chuẩn.

Đối với một hệ chuẩn hóa, một phần tử là một lớp các từ có cùng một dạng chuẩn hóa. Một từ đóng là một từ không có tham số. (Một từ như formula_24 với tham số formula_15 được gọi là một từ mở.) Như vậy, formula_21 và formula_27 là hai từ khác nhau của phần tử formula_22.

=== Các loại phụ thuộc ===
Một loại phụ thuộc là một loại mà phụ thuộc vào một từ hoặc loại khác. Ví dụ, loại trả về của một hàm có thể phụ thuộc vào đối số đưa vào hàm.

Ví dụ, một danh sách formula_4 s có độ dài 4 có thể có loại khác với một danh sách formula_4 s có độ dài 5.

=== Các loại đẳng thức ===
Nhiều hệ hình thái có một loại đại diện cho "sự bằng nhau" của các loại và các từ. Loại này khác với quy tắc chuyển đổi, và được gọi là "đẳng thức mệnh đề".

Trong lý thuyết hình thái trực giác, loại đẳng thức được gọi là formula_31. Có một loại formula_32 với formula_33 là một loại và formula_34, formula_35 là các từ có loại formula_33. Một từ của loại formula_32 là một đẳng thức "formula_34 bằng formula_35".

Trong thực tế, có thể xây dựng một loại formula_40 nhưng loại đó sẽ không có từ nào cả (vì formula_22 khác formula_1). Trong lý thuyết loại trực giác, ta xây dựng các từ đẳng thức bắt đầu từ các đẳng thức đồng nhất. Nếu formula_22 là một từ loại formula_4, tồn tại một từ với loại formula_45. Các đẳng thức phức tạp hơn có thể được tạo ra bằng cách tạo ra một từ đồng nhất rồi thực hiện rút gọn một bên. Ví dụ, nếu formula_46 là một từ loại formula_4, ta có một đẳng thức đồng nhất formula_48, và bằng cách rút gọn, ta có một từ mới loại formula_49. Do đó, trong hệ này, loại đẳng thức thể hiện rằng hai giá trị cùng loại có thể được chuyển đổi bằng phép rút gọn.

== Các lý thuyết hình thái ==
=== Chính ===
- Phép tính lambda hình thái đơn, là một logic bậc cao;
- Lý thuyết hình thái trực giác;
- Hệ F;
- Phép tính xây dựng và các dẫn xuất

=== Phụ ===
- Automath;
- Lý thuyết hình thái ST;

=== Hiện đang được nghiên cứu ===
- Lý thuyết hình thái đồng luân đang được nghiên cứu.

== Tham khảo ==
- Bell, John L. (2012). "Types, Sets and Categories" (PDF). In Kanamory, Akihiro (ed.). "Sets and Extensions in the Twentieth Century" (PDF). Handbook of the History of Logic. 6. Elsevier.
- Church, Alonzo (1940). "A formulation of the simple theory of types". "The Journal of Symbolic Logic". 5 (2): 56–68. JSTOR 2266170.
- Farmer, William M. (2008). "The seven virtues of simple type theory". "Journal of Applied Logic". 6 (3): 267–286.

== Đọc thêm ==
- Aarts, C.; Backhouse, R.; Hoogendijk, P.; Voermans, E.; van der Woude, J. (December 1992). "A Relational Theory of Datatypes". Technische Universiteit Eindhoven.
- Andrews B., Peter (2002). "An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof" (2nd ed.). Kluwer. ISBN <bdi>978-1-4020-0763-7</bdi>.
- Covers type theory in depth, including polymorphic and dependent type extensions. Gives categorical semantics.
- Cardelli, Luca (1996). "Type Systems". In Tucker, Allen B. (ed.). "The Computer Science and Engineering Handbook". CRC Press. pp. 2208–36. ISBN <bdi>9780849329098</bdi>..
- Constable, Robert L. (2012) [2002]. "Naïve Computational Type Theory" (PDF ). In Schwichtenberg, H.; Steinbruggen, R. (eds.). "Proof and System-Reliability". Nato Science Series II. 62. Springer. pp. 213–259. ISBN <bdi>9789401004138</bdi>.
- Coquand, Thierry (2018) [2006]. "Type Theory". "Stanford Encyclopedia of Philosophy".
- Thompson, Simon (1991). "Type Theory and Functional Programming". Addison–Wesley.
- Hindley, J. Roger (2008) [1995]. "Basic Simple Type Theory". Cambridge University Press.
- Kamareddine, Fairouz D.; Laan, Twan; Nederpelt, Rob P. (2004). "A modern perspective on type theory: from its origins until today". Springer.
- Ferreirós, José; Domínguez, José Ferreirós (2007). "X. Logic and Type Theory in the Interwar Period". "Labyrinth of thought: a history of set theory and its role in modern mathematics" (2nd ed.). Springer.
- Laan, T.D.L. (1997). "The evolution of type theory in logic and mathematics" (PDF) (PhD). Eindhoven University of Technology.

== Liên kết ngoài ==
=== Tiếng Việt ===
- Bài viết trên SocialLife.
- Luận văn về tư tưởng Russel, trang 12 có nhắc tới "lý thuyết hình thái logic".

=== Tiếng Anh ===
- Robert L. Constable (ed.). "Computational type theory". Scholarpedia.
- The TYPES Forum — moderated e-mail forum focusing on type theory in computer science, operating since 1987.
- The Nuprl Book: "Introduction to Type Theory."
- Types Project lecture notes of summer schools 2005–2008
- The 2005 summer school has introductory lectures