6. Không gian Euclide¶
Trên không gian vector \(\mathcal{V}\) chúng ta bổ sung thêm một phép toán là tích vô hướng (dot product, tích chấm) của hai vector.
Giả sử với hai vector \(\bm{x} = (x_1, x_2, \ldots, x_n)\) và \(\bm{y} = (y_1, y_2, \ldots, y_n)\). Khi đó tích vô hướng của \(\bm{x}\) và \(\bm{y}\) là
Một số sách kí hiệu tích vô hướng của hai vector \(\bm{x}\) và \(\bm{y}\) là \(\langle \bm{x}, \bm{y} \rangle\). Trong phần này này mình sẽ dùng kí hiệu \(\bm{x} \cdot \bm{y}\) như trên.
Không gian vector có phép toán tích vô hướng được gọi là không gian Euclide. Khi \(\bm{x} = \bm{y}\) thì căn bậc hai của kết quả tích vô hướng được gọi là chuẩn Euclide (hay Euclidean norm) và được kí hiệu
Như vậy ta có thể viết $lVert bm{x} rVert^2 = bm{x}^2$.
Định lí 6.2 (Bất đẳng thức Cauchy-Schwarz)
Với hai vector \(\bm{x}\) và \(\bm{y}\) bất kì ta luôn có
nghĩa là tích độ dài của hai vector bất kì trong cùng không gian Euclide lớn hơn hoặc bằng tích vô hướng giữa chúng. Dấu bằng xảy ra khi và chỉ khi \(\dfrac{x_1}{y_1} = \dfrac{x_2}{y_2} = \ldots = \dfrac{x_n}{y_n}\). Nói cách khác là hai vector cùng phương.
Chứng minh
Với mọi số thực \(t\), ta luôn có
Nếu xem biểu thức trên là đa thức bậc hai theo \(t\), để đa thức lớn hơn hoặc bằng \(0\) với mọi \(t \in \mathbb{R}\) thì ta phải có \(\Delta' \leqslant 0\) và \(\lVert \bm{y} \rVert^2 > 0\) (luôn đúng). Ta có
tương đương với \(\lvert \bm{x} \cdot \bm{y} \rvert \leqslant \lVert \bm{x} \rVert \cdot \lVert \bm{y} \rVert\) (điều phải chứng minh).
6.1. Hệ cơ sở trực giao¶
Cho không gian Euclide \(\mathcal{V}\) và một cơ sở của nó là \(\bm{v}_1\), \(\bm{v}_2\), ..., \(\bm{v}_d\). Thuật toán trực giao Gram-Schmidt là thuật toán biến đổi cơ sở trên thành một cơ sở mới, trong đó các vector đều trực giao nhau.
Thuật toán 6.1 (Thuật toán trực giao Gram-Schmidt)
Input: \(\bm{v}_1\), ..., \(\bm{v}_d\) trong \(\mathbb{R}^n\).
Output: \(\bm{u}_1\), ..., \(\bm{u}_d\) trong \(\mathbb{R}^n\) mà \(\bm{u}_i \cdot \bm{u}_j = 0\) với mọi \(i \neq j\).
\(\bm{u}_1 \gets \bm{v}_1\)
- for \(i = 2\) to \(d\)
\(\bm{w} = \bm{v}_i\)
- for \(j = i-1\) to \(1\)
\(\mu_{i,j} = (\bm{v}_i \cdot \bm{u}_j) / (\bm{u}_i \cdot \bm{u}_j)\)
\(\bm{w} \gets \bm{w} - \mu_{i, j} \bm{u}_j\)
\(\bm{u}_i \gets \bm{w}\)
Trả về cơ sở trực giao \(\bm{u}_1\), ..., \(\bm{u}_d\)
Nói cách khác, với \(\bm{u}_1 = \bm{v}_1\), với mỗi \(i = 2, 3, \ldots, d\) ta tính vector \(\bm{u}_i\) với công thức
Ở đây \(\mu_{i,j} = \dfrac{\bm{v}_i \cdot \bm{u}_j}{\bm{u}_i \cdot \bm{u}_j}\) là hệ số trước \(\bm{u}_j\).
Ví dụ 6.8
Xét cơ sở \(\bm{v}_1 = (2, -2, 4)\), \(\bm{v}_2 = (1, -1, 0)\) và \(\bm{v}_3 = (5, -3, 3)\) của \(\mathbb{R}^3\).
Đặt \(\bm{u}_1 = \bm{v}_1 = (2, -2, 4)\).
Ta có
Suy ra
Tương tự
Tiếp theo
Ta có thể kiếm chứng rằng
Tương tự với \(\bm{u}_1 \cdot \bm{u}_3 = 0\) và \(\bm{u}_2 \cdot \bm{u}_3 = 0\). Thêm nữa các vector này cũng độc lập tuyến tính nên cũng là một hệ cơ sở của \(\mathbb{R}^3\).
Như vậy các vector \(\bm{u}_1\), \(\bm{u}_2\), \(\bm{u}_3\) là một cơ sở trực giao của \(\mathbb{R}^3\).
Nhận xét 6.7
Cơ sở trực giao cho phép ta tính độ dài của tất cả các vector khác trong không gian vector dễ dàng hơn.
Thật vậy, giả sử \(\bm{u}_1\), \(\bm{u}_2\), ..., \(\bm{u}_d\) là các vector trong cơ sở trực giao. Mọi vector \(\bm{x}\) trong không gian vector đều có dạng
Khi đó
Do các vector trong cơ sở đều trực giao với nhau nên \(\bm{u}_i \cdot \bm{u}_j = 0\) với \(i \neq j\), \(1 \leqslant i, j \leqslant d\). Từ đó ta có được
hay
Kết quả rất đơn giản, độ dài của các vector bất kì là căn bậc hai của tổ hợp độ dài các vector trong cơ sở và hệ số tương ứng.
6.2. Chứng minh thuật toán Gram-Schmidt¶
Cho không gian vector \(\mathcal{V}\) với cơ sở là các vector \(\bm{v}_1\), ..., \(\bm{v}_d\). Thuật toán Gram-Schmidt biến đổi và cho kết quả là cơ sở mới \(\bm{u}_1\), ..., \(\bm{u}_d\) sao cho các vector trong cơ sở mới này trực giao nhau đôi một.
Đặt \(\bm{u}_1 = \bm{v}_1\).
Bước 1. Ta chứng minh với mọi \(k \geqslant 2\) thì \(\bm{u}_k \cdot \bm{u}_1 = 0\).
Ta có
Suy ra
Như vậy với \(k = 2\) thì đẳng thức đúng. Giả sử đẳng thức \(\bm{u}_k \cdot \bm{u}_1 = 0\) đúng tới \(k \geqslant 2\). Xét \(k+1\) ta có
suy ra
Ta thấy rằng với \(j = 2, \ldots, k\) thì \(\bm{u}_j \cdot \bm{u}_1 = 0\) theo giả thiết quy nạp. Như vậy chỉ còn lại \(j = 1\) và kết quả là
Bước 2. Ta chứng minh với mọi \(k \geqslant 3\) thì \(\bm{u}_k \cdot \bm{u}_2 = 0\).
Tương tự ta sử dụng quy nạp. Ta có
suy ra
Ta đã chứng minh được \(\bm{u}_2 \cdot \bm{u}_1 = 0\). Như vậy kết quả sẽ là
Với giả thiết quy nạp \(\bm{u}_k \cdot \bm{u}_2 = 0\) đúng tới \(k \geqslant 3\), ta xét \(k+1\). Khi đó
suy ra
Theo giả thiết quy nạp thì mọi \(j \geqslant 3\) đều cho kết quả \(\bm{u}_j \cdot \bm{u}_2 = 0\), thêm nữa là \(\bm{u}_1 \cdot \bm{u}_2 = 0\) do chứng minh trên. Như vậy trong tổng chỉ còn lại \(j = 2\) và kết quả sẽ là
Từ đây có thể thấy, sử dụng phương pháp quy nạp ta có thể chứng minh được rằng với mỗi số \(n \geqslant 2\), thì mọi \(k \geqslant n+1\) ta đều có \(\bm{u}_k \cdot \bm{u}_n = 0\), hay nói cách khác là khi thuật toán tính \(\bm{u}_k\) thì nó sẽ trực giao với tất cả \(\bm{u}_1\), \(\bm{u}_2\), ..., \(\bm{u}_{k-1}\).