Định thức và ma trận nghịch đảo là hai phép tính ma trận hay gặp nhất trong đề thi đại số tuyến tính, và cũng là hai phép mà chỉ cần sai một dấu là hỏng toàn bộ phần sau. Bài này giải trọn vẹn một ví dụ 2×2 và một ví dụ 3×3 bằng tay, ghi đủ mọi con số trung gian, rồi đối chiếu với cách máy tính ma trận làm bằng các phép biến đổi hàng. Mọi con số dưới đây đều được kiểm tra bằng phép tính phân số chính xác của công cụ và, độc lập, bằng một phương pháp thứ hai.
Trường hợp 2×2: ad − bc
Lấy
A = | 4 7 |
| 2 6 |Với ma trận 2×2 [[a, b], [c, d]], định thức là ad − bc: 4 × 6 − 7 × 2 = 24 − 14 = 10.
Ma trận nghịch đảo cũng có công thức ngắn gọn: đổi chỗ hai phần tử trên đường chéo chính, đổi dấu hai phần tử còn lại, rồi chia tất cả cho định thức.
A⁻¹ = 1/10 · | 6 −7 | = | 3/5 −7/10 |
| −2 4 | | −1/5 2/5 |Viết dạng thập phân là [[0,6; −0,7], [−0,2; 0,4]]. Luôn kiểm tra bằng cách nhân ngược lại. Hàng một của A nhân cột một của A⁻¹ là 4 × 0,6 + 7 × (−0,2) = 2,4 − 1,4 = 1, còn hàng một nhân cột hai là 4 × (−0,7) + 7 × 0,4 = −2,8 + 2,8 = 0. Hàng thứ hai cho 0 và 1 theo cách tương tự, nên A·A⁻¹ = I.
Nếu ad − bc bằng 0 thì không có gì để chia: ma trận suy biến và không có nghịch đảo. [[1, 2], [2, 4]] là ví dụ kinh điển, vì hàng hai gấp đôi hàng một.
Định thức 3×3 bằng khai triển phần bù đại số
Bây giờ là ma trận 3×3:
A = | 2 −3 1 |
| 2 0 −1 |
| 1 4 5 |Khai triển theo hàng thứ nhất, mỗi phần tử được nhân với định thức của ma trận 2×2 còn lại khi gạch bỏ hàng và cột của nó, với dấu luân phiên + − +:
- 2 × det[[0, −1], [4, 5]] = 2 × (0·5 − (−1)·4) = 2 × 4 = 8
- −(−3) × det[[2, −1], [1, 5]] = 3 × (2·5 − (−1)·1) = 3 × 11 = 33
- 1 × det[[2, 0], [1, 4]] = 1 × (8 − 0) = 8
det(A) = 8 + 33 + 8 = 49.
Số hạng ở giữa là chỗ hay sai nhất: phần tử là −3 và vị trí của nó mang dấu trừ, hai dấu trừ thành dấu cộng.
Cùng định thức đó bằng khử hàng
Khai triển phần bù đại số tăng rất nhanh (khai triển đầy đủ một ma trận 6×6 có 720 số hạng), nên máy tính và người làm cẩn thận dùng phép khử. Nếu muốn theo dõi định thức dễ dàng, chỉ dùng hai loại thao tác:
- cộng vào một hàng một bội của hàng khác: định thức không đổi;
- đổi chỗ hai hàng: định thức đổi dấu.
Với ma trận A ở trên:
- R2 ← R2 − R1 cho hàng 2 = [0, 3, −2].
- R3 ← R3 − (1/2)R1 cho hàng 3 = [0, 11/2, 9/2].
- R3 ← R3 − (11/6)R2 cho hàng 3 = [0, 0, 49/6].
Ma trận giờ là ma trận tam giác với đường chéo 2, 3 và 49/6. Không có lần đổi hàng nào, nên det(A) = 2 × 3 × 49/6 = 49, đúng như trên. Đây chính là ba bước mà máy tính ma trận liệt kê cho ví dụ này.
Khi phần tử chính bằng 0 thì phải đổi hàng. Với [[0, 2, 1], [1, 1, 1], [2, 1, 3]], phần tử đầu tiên bằng 0 nên đổi hàng 1 và hàng 2 trước. Một lần đổi nghĩa là tích đường chéo phải nhân thêm −1; định thức bằng −3, có thể kiểm tra bằng khai triển: 0·(3 − 1) − 2·(3 − 2) + 1·(1 − 2) = −2 − 1 = −3.
Ma trận nghịch đảo 3×3 bằng Gauss–Jordan
Viết A cạnh ma trận đơn vị rồi biến đổi đến khi nửa trái thành I. Mỗi bước áp dụng cho cả hàng gồm sáu số:
- R1 ← (1/2)R1: [1, −3/2, 1/2 | 1/2, 0, 0]
- R2 ← R2 − 2R1: [0, 3, −2 | −1, 1, 0]
- R3 ← R3 − R1: [0, 11/2, 9/2 | −1/2, 0, 1]
- R2 ← (1/3)R2: [0, 1, −2/3 | −1/3, 1/3, 0]
- R1 ← R1 + (3/2)R2: [1, 0, −1/2 | 0, 1/2, 0]
- R3 ← R3 − (11/2)R2: [0, 0, 49/6 | 4/3, −11/6, 1]
- R3 ← (6/49)R3: [0, 0, 1 | 8/49, −11/49, 6/49]
- R1 ← R1 + (1/2)R3: [1, 0, 0 | 4/49, 19/49, 3/49]
- R2 ← R2 + (2/3)R3: [0, 1, 0 | −11/49, 9/49, 4/49]
Vậy
A⁻¹ = 1/49 · | 4 19 3 |
| −11 9 4 |
| 8 −11 6 |Cách kiểm tra độc lập là công thức ma trận phụ hợp: A⁻¹ bằng ma trận các phần bù đại số đã chuyển vị, chia cho det(A). Phần bù đại số của hàng thứ nhất là 4, −11 và 8 (chính các số trong phép khai triển ở trên, kèm dấu), và chúng xuất hiện ở cột thứ nhất của ma trận nghịch đảo, chia cho 49. Bước chuyển vị này rất dễ quên.
Để ý rằng mọi phần tử đều có mẫu 49. Không phải ngẫu nhiên: nghịch đảo là ma trận phụ hợp chia cho định thức, nên khi các phần tử của A là số nguyên, mẫu số của các phần tử A⁻¹ luôn là ước của det(A). Đây là cách kiểm tra nhanh tính hợp lý của đáp số trên giấy.
Vì sao phân số chính xác quan trọng
Nhập vào máy tính dưới dạng thập phân, 1/49 thành 0,0204081632…, và sau chín phép biến đổi hàng, sai số làm tròn cộng dồn lại. Với ma trận "dễ tính" như ví dụ này, sai số vẫn rất nhỏ, nhưng với ma trận gần suy biến, nó có thể quyết định định thức hiện ra là 0 hay 0,0000000001, tức là khác biệt giữa "không có nghịch đảo" và "có nghịch đảo với các phần tử khổng lồ". Ma trận Hilbert 3×3, với các phần tử 1, 1/2, 1/3, …, 1/5, có nghịch đảo là các số nguyên [[9, −36, 30], [−36, 192, −180], [30, −180, 180]]; phân số chính xác cho ra đúng từng chữ số, còn số thực dấu phẩy động thường lệch đi ở mấy chữ số cuối. Máy tính ma trận giữ mọi giá trị dưới dạng phân số của hai số nguyên và chỉ làm tròn khi bạn yêu cầu hiện số thập phân.
Những lỗi hay gặp
- Quên bảng dấu bàn cờ. Dấu của phần bù đại số theo quy luật + − + / − + − / + − +, không phụ thuộc dấu của chính phần tử.
- Không đổi dấu sau khi đổi hàng. Mỗi lần đổi hàng nhân định thức với −1; đổi hai lần thì triệt tiêu.
- Nhân một hàng với một số khi đang tính định thức. Nhân một hàng với k thì định thức cũng nhân với k. Nếu bạn chia hàng 1 cho 2 để có số 1 dẫn đầu, phải nhân đáp số cuối với 2 trở lại. Khi chỉ cần định thức, hãy tránh nhân chia hàng.
- Chỉ biến đổi một nửa hàng. Trong Gauss–Jordan, phép biến đổi áp dụng cho cả hai bên vạch dọc.
- Quên chuyển vị các phần bù đại số trong công thức ma trận phụ hợp.
- Tìm nghịch đảo của ma trận không vuông hoặc suy biến. Chỉ ma trận vuông có định thức khác 0 mới có nghịch đảo; với ma trận 2×3, câu hỏi không có nghĩa.
- So sánh ma trận trung gian với sách giáo khoa. Chọn phần tử chính khác nhau cho các hàng trung gian khác nhau. Định thức, ma trận nghịch đảo và dạng bậc thang rút gọn cuối cùng là duy nhất, nên hãy so sánh những thứ đó.
Kiểm tra bài tập bằng công cụ
Nhập ma trận vào máy tính ma trận, chọn Định thức hoặc Ma trận nghịch đảo rồi mở Xem các bước. Mỗi phép biến đổi hàng được viết theo đúng ký hiệu như trên (R3 ← R3 − (11/6)R2) kèm ma trận sau đó, nên bạn tìm được chính xác dòng mà lời giải của mình bắt đầu lệch. Với hệ phương trình, cùng phép khử trên [A | b] cho biết hệ có một nghiệm, vô nghiệm hay vô số nghiệm, còn công cụ giải phương trình xử lý một phương trình bậc hai hay bậc ba với lời giải từng bước riêng.