Hình ảnh minh hoạ tính kết hợp của phép toán hai ngôi; | |
Loại | Luật, Quy tắc thay |
---|---|
Lĩnh vực |
|
Phát biểu tương đương |
|
Trong toán học, tính kết hợp là tính chất của một số phép toán hai ngôi rằng thay đổi các dấu ngoặc trong biểu thức sẽ không làm thay đổi kết quả. Trong logic mệnh đề, tính kết hợp là quy tắc thay hợp lệ cho các biểu thức trong các bài chứng minh logic.
Trong các biểu thức có sự xuất hiện của hai nhiều hơn số lần của cùng toán hạng có tính kết hợp, kết quả của biểu thức đó sẽ không thay đổi bất kể sự thay đổi thứ tự các phép toán trên đó, miễn là dãy các toán hạng cũng không thay đổi. Nghĩa là (sau khi viết lại biểu thức bằng các dấu ngoặc), thay đổi vị trí các dấu ngoặc trong biểu thức đó. Để lấy ví dụ, xét các phương trình sau:
Mặc dù các dấu ngoặc được sắp xếp lại trên mỗi phương trình, giá trị của các biểu thức đó vẫn không thay đổi. Bởi tính chất này đúng khi thực hiện phép cộng và nhân trên bất kỳ số thực nào, ta có thể nói rằng 'phép cộng và nhân của số thực có tính kết hợp'.
Tính kết hợp khác với tính giao hoán vì tính giao hoán chỉ áp dụng đến thứ tự của hai toán hạng trong tính toán. Ví dụ, không cần quan tâm đến thứ tự khi nhân các số thực bởi a × b = b × a, do đó chúng ta nói phép nhân các số thực có tính giao hoán. Tuy nhiên, có các phép toán như phép hợp hàm và phép nhân ma trận có tính kết hợp nhưng (thường thì) không giao hoán.
Có rất nhiều phép toán có tính kết hợp trong toán học; thậm chí, nhiều cấu trúc đại số (ví dụ như nửa nhóm và phạm trù) yêu cầu phép toán hai ngôi của nó phải có tính kết hợp.
Tuy nhiên, cũng có nhiều phép toán hai ngôi quan trọng không có tính kết hợp; các ví dụ nổi bật bao gồm phép trừ, phép mũ và tích vectơ. Ngược lại với lý thuyết số thực, trong khoa học máy tính, phép cộng các số thực dấu phẩy động không có tính kết hợp, do đó cách kết hợp một biểu thức sẽ có ảnh hưởng lớn tới kết quả do sai số làm tròn.
Định nghĩa
Giả sử trên một tập hợp X bất kỳ có trang bị một phép toán hai ngôi *, nghĩa là tồn tại một hàm số:
Chúng ta ký hiệu:
- a*b = f(a,b)
Phép toán * được gọi là có tính kết hợp nếu
- (a*b)*c = a*(b*c)
với mọi a, b, c thuộc tập hợp X.
Ví dụ khác
- Các phép toán cộng và nhân trên số thực có tính kết hợp.
- Phép nhân ma trận có tính kết hợp, nhưng (thường thì) không có tính giao hoán.
- Hai phép bội chung nhỏ nhất và ước chung lớn nhất có tính kết hợp.
- Phép cộng và nhân của số phức và số quaternion có tính kết hợp. Khi chuyển sang số octonion, phép cộng vẫn có tính kết hợp, nhưng phép nhân không có.
- Trong lĩnh vực khoa học máy tính, phép nối xâu có tính kết hợp. Cụ thể, nếu ta có
'Hôm nay '
,'trời '
,'nắng'
, việc nối xâu đầu tiên với xâu thứ hai rồi mới nối xâu thứ ba, hoặc nối xâu thứ hai với xâu thứ ba rồi mới nối xâu thứ nhất đều cho cùng kết quả là'Hôm nay trời nắng'
. Phép nối xâu không có tính giao hoán.
Phép toán không có tính kết hợp
Một phép toán hai ngôi * trên tập S được gọi là không có tính kết hợp nếu
Đối với các phép toán như vậy, thứ tự tính toán trở nên quan trọng, ví dụ:
- Phép trừ
- Phép chia
- Phép lũy thừa