Forma escalonada de linha - Row echelon form

Na álgebra linear , uma matriz está na forma escalonada se tiver a forma resultante de uma eliminação gaussiana .

Uma matriz estando na forma escalonada de linha significa que a eliminação gaussiana operou nas linhas, e a forma escalonada de coluna significa que a eliminação gaussiana operou nas colunas. Em outras palavras, uma matriz está na forma escalonada de coluna se sua transposta estiver na forma escalonada de linha. Portanto, apenas as formas escalonadas em linha são consideradas no restante deste artigo. As propriedades semelhantes da forma escalonada da coluna são facilmente deduzidas pela transposição de todas as matrizes. Especificamente, uma matriz está na forma escalonada de linha se

  • Todas as linhas consistindo de apenas zeros estão na parte inferior.
  • O coeficiente líder (também chamado de pivô ) de uma linha diferente de zero está sempre estritamente à direita do coeficiente líder da linha acima dele.

Alguns textos adicionam a condição de que o coeficiente líder deve ser 1.

Essas duas condições implicam que todas as entradas em uma coluna abaixo de um coeficiente inicial são zeros.

A seguir está um exemplo de uma matriz 3 × 5 na forma escalonada de linha, que não está na forma escalonada de linha reduzida (veja abaixo):

Muitas propriedades de matrizes podem ser facilmente deduzidas de sua forma escalonada de linha, como a classificação e o kernel .

Forma escalonada de linha reduzida

Uma matriz está na forma escalonada de linha reduzida (também chamada de forma canônica de linha ) se satisfizer as seguintes condições:

  • É em forma de escalão de linha.
  • A entrada inicial em cada linha diferente de zero é 1 (chamada de 1 inicial).
  • Cada coluna que contém um 1 à esquerda tem zeros em todas as outras entradas.

A forma escalonada de linha reduzida de uma matriz pode ser calculada pela eliminação de Gauss-Jordan . Ao contrário da forma escalonada de linha, a forma escalonada de linha reduzida de uma matriz é única e não depende do algoritmo usado para computá-la. Para uma dada matriz, apesar da forma escalonada de linha não ser única, todas as formas escalonadas de linha e a forma escalonada de linha reduzida têm o mesmo número de linhas zero e os pivôs estão localizados nos mesmos índices.

Este é um exemplo de uma matriz em forma escalonada de linha reduzida, o que mostra que a parte esquerda da matriz nem sempre é uma matriz de identidade :

Para matrizes com coeficientes inteiros , a forma normal de Hermite é uma forma escalonada de linha que pode ser calculada usando a divisão euclidiana e sem a introdução de nenhum número racional ou denominador. Por outro lado, a forma escalonada reduzida de uma matriz com coeficientes inteiros geralmente contém coeficientes não inteiros.

Transformação para forma escalonada de linha

Por meio de uma sequência finita de operações elementares de linha , chamada de eliminação gaussiana , qualquer matriz pode ser transformada para a forma escalonada de linha. Visto que as operações elementares de linha preservam o espaço de linha da matriz, o espaço de linha da forma escalonada de linha é igual ao da matriz original.

A forma escalonada resultante não é única; qualquer matriz que esteja em forma escalonada pode ser colocada em uma forma escalonada ( equivalente ) adicionando um múltiplo escalar de uma linha a uma das linhas acima, por exemplo:

No entanto, cada matriz tem uma forma escalonada de linha reduzida exclusiva . No exemplo acima, a forma escalonada de linha reduzida pode ser encontrada como

Isso significa que as linhas diferentes de zero da forma escalonada de linha reduzida são o único conjunto gerador de escalão reduzido de linha para o espaço de linha da matriz original.

Sistemas de equações lineares

Diz-se que um sistema de equações lineares está em forma escalonada por linha se sua matriz aumentada estiver em forma escalonada por linha. Da mesma forma, um sistema de equações lineares é dito estar em forma de escalão de linha reduzida ou em forma canônica se sua matriz aumentada estiver em forma de escalão de linha reduzida.

A forma canônica pode ser vista como uma solução explícita do sistema linear. Na verdade, o sistema é inconsistente se e somente se uma das equações da forma canônica for reduzida a 0 = 1. Caso contrário, reagrupando no lado direito todos os termos das equações, exceto os principais, expressa as variáveis ​​correspondentes a os pivôs como constantes ou funções lineares das outras variáveis, se houver.

Pseudocódigo para forma escalonada de linha reduzida

O seguinte pseudocódigo converte uma matriz em uma forma escalonada de linha reduzida:

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

O pseudocódigo a seguir converte a matriz em uma forma escalonada de linha (não abreviado):

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

Notas

Referências

links externos