Trong đại số tuyến tính, dạng bậc thang của một ma trận là hình dạng thu được của nó sau khi thực hiện phép khử Gauss.

Một ma trận ở dạng hàng bậc thang có nghĩa là phép khử Gauss đã được tiến hành trên các hàng của nó, còn dạng cột bậc thang nghĩa là phép khử Gauss đã được tiến hành trên các cột. Nói cách khác, một ma trận ở dạng cột bậc thang nếu ma trận chuyển vị của nó ở dạng hàng bậc thang. Vì thế, từ đây bài viết này chỉ xét dạng hàng bậc thang. Dạng cột bậc thang có các tính chất tương tự dạng hàng bậc thang, và có thể dễ dàng suy ra được bằng cách lấy chuyển vị của ma trận. Một cách cụ thể, một ma trận ở dạng hàng bậc thang nếu:

  • tất cả các hàng của ma trận mà chỉ gồm các số 0 (gọi là hàng zero) đều được đặt ở dưới cùng
  • hệ số chính (hay phần tử chính) của một hàng không phải zero luôn ở phía bên phải của hệ số chính của hàng ngay trên nó.

Một số tài liệu còn thêm điều kiện rằng các hệ số chính phải đều bằng 1.[1]

Hai điều kiện trên kéo theo rằng tất cả các phần tử ở cùng cột và bên dưới hệ số chính đều là 0.[2]

Sau đây là một ví dụ về một ma trận 3×5 ở dạng hàng bậc thang, nhưng chưa phải là ở dạng hàng bậc thang rút gọn (xem ở dưới).

Từ dạng hàng bậc thang của một ma trận có thể suy ra nhiều tính chất của nó, thí dụ như hạnghạt nhân.

Dạng hàng bậc thang rút gọn

sửa

Một ma trận ở dạng hàng bậc thang rút gọn (còn gọi là dạng chính tắc hàng) nếu nó thỏa mãn ba điều kiện sau:[3]

  • Nó ở dạng hàng bậc thang
  • Phần tử chính của hàng khác 0 đều là 1 (gọi là số 1 chính)
  • Ngoài số 1 chính ra, tất cả các phần tử khác cùng cột với nó đều là 0.

Dạng hàng bậc thang rút gọn của một ma trận có thể được tính bằng phép khử Gauss–Jordan. Không giống như dạng hàng bậc thang, dạng hàng bậc thang rút gọn của một ma trận là duy nhất và không phụ thuộc vào giải thuật được sử dụng để tính nó.[4] Với một ma trận đã cho, mặc dù dạng hàng bậc thang không phải là duy nhất, tất cả các dạng bậc thang và bậc thang rút gọn của ma trận đều có cùng số hàng zero và các phần tử chính của các dạng đều có chỉ số giống nhau.[4]

Đây là một ví dụ về một ma trận ở dạng hàng bậc thang rút gọn, ta cũng có thể thấy phần bên trái của ma trận bậc thang rút gọn không phải khi nào cũng là một ma trận đơn vị:

 

Đối với các ma trận với các hệ số nguyên, dạng chuẩn tắc Hermite là một dạng hàng bậc thang mà có thể được tính bằng cách sử dụng phép chia Euclide và không cần tới phân số hay các số hữu tỉ. Mặt khác, dạng bậc thang rút gọn của một ma trận với các hệ số nguyên thường chứa các hệ số không nguyên.

Biến đổi về dạng hàng bậc thang

sửa

Bằng cách thực hiện một dãy hữu hạn các phép biến đổi hàng sơ cấp, gọi là phép khử Gauss, một ma trận bất kỳ có thể được đưa về dạng hàng bậc thang. Bởi các phép biến đổi sơ cấp bảo toàn không gian hàng của ma trận, không gian hàng của dạng hàng bậc thang rút gọn là giống với không gian hàng của ma trận ban đầu.

Dạng hàng bậc thang thu được không phải là duy nhất; bởi một ma trận bất kỳ ở dạng hàng bậc thang có thể chuyển đến một dạng hàng bậc thang tương đương, bằng cách cộng một hàng với một bội của một trong các hàng phía trên, ví dụ:

 

Tuy nhiên, mỗi ma trận chỉ có duy nhất một dạng hàng bậc thang rút gọn. Trong ví dụ trên, dạng hàng bậc thang rút gọn có thể được tìm ra như sau

 

Điều này có nghĩa là các hàng khác zero của dạng hàng bậc thang rút gọn là hệ sinh bậc thang rút gọn duy nhất của không gian hàng của ma trận ban đầu.

Hệ phương trình tuyến tính

sửa

Một hệ phương trình tuyến tính được gọi là ở trong dạng hàng bậc thang nếu ma trận bổ sung của nó ở dạng hàng bậc thang. Tương tự, một hệ phương trình ở trong dạng hàng bậc thang rút gọn hay dạng chính tắc nếu ma trận bổ sung của nó ở dạng bậc thang rút gọn.

Dạng chuẩn tắc có thể được coi là một nghiệm tường minh của hệ phương trình tuyến tính. Thật vậy, hệ phương trình là không nhất quán hay vô nghiệm khi và chỉ khi một trong các phương trình trong dạng chuẩn tắc được giản ước về dạng 0 = 1.[5] Nếu không, chuyển sang vế phải tất cả các số hạng của các phương trình trừ các số 1 chính, biểu thị các biến chính dưới dạng các hằng số hoặc hàm tuyến tính của các biến còn lại, nếu có.

Mã giả

sửa

Mã giả sau đây chuyển đổi một ma trận về dạng hàng bậc thang rút gọn:

function ToReducedRowEchelonForm(Matrix M) is
    lead:= 0
    rowCount:= the number of rows in M
    columnCount:= the number of columns in M
    for 0 ≤ r < rowCount do
        if columnCountlead then
            stop function
        end if
        i = r
        while M[i, lead] = 0 do
            i = i + 1
            if rowCount = i then
                i = r
                lead = lead + 1
                if columnCount = lead then
                    stop function
                end if
            end if
        end while
        if ir then Swap rows i and r
        Divide row r by M[r, lead]
        for 0 ≤ i < rowCount do
            if ir do
                Subtract M[i, lead] multiplied by row r from row i
            end if
        end for
        lead = lead + 1
    end for
end function

Mã giả sau đây chuyển ma trận về dạng hàng bậc thang (chưa rút gọn):

function ToRowEchelonForm(Matrix M) is
    nr:= number of rows in M
    nc:= number of columns in M
    
    for 0 ≤ r < nr do
        allZeros:= true
        for 0 ≤ c < nc do
            if M[r, c] != 0 then
                allZeros:= false
                exit for
            end if
        end for
        if allZeros = true then
            In M, swap row r with row nr
            nr:= nr - 1
        end if
    end for
    
    p:= 0
    while p < nr and p < nc do
        label nextPivot:
            r:= 1
            while M[p, p] = 0 do 
                if (p + r) <= nr then
                    p:= p + 1
                    goto nextPivot
                end if
                In M, swap row p with row (p + r)
                r:= r + 1
            end while
            for 1 ≤ r < (nr - p) do 
                if M[p + r, p] != 0 then
                    x:= -M[p + r, p] / M[p, p]
                    for pc < nc do
                        M[p + r, c]:= M[p, c] * x + M[p + r, c]
                    end for
                end if
            end for
            p:= p + 1
    end while
end function

Chú thích

sửa
  1. ^ See, for instance, Leon (2009, tr. 13)
  2. ^ Meyer 2000, tr. 44
  3. ^ Meyer 2000, tr. 48
  4. ^ a b Anton, Howard; Rorres, Chris (ngày 23 tháng 10 năm 2013). Elementary Linear Algebra: Applications Version, 11th Edition (bằng tiếng Anh). Wiley Global Education. tr. 21. ISBN 9781118879160.
  5. ^ Cheney, Ward; Kincaid, David R. (ngày 29 tháng 12 năm 2010). Linear Algebra: Theory and Applications (bằng tiếng Anh). Jones & Bartlett Publishers. tr. 47–50. ISBN 9781449613525.

Tham khảo

sửa

Liên kết ngoài

sửa