掃き出し法での解析的な求め方がある。 下のような規則的な変形方法を行基本変形を用いて求める解法である。
2 × 2 行列の場合には、それぞれ、次のように書ける。
a00 a01 ca00 ca01 ( ) = ( ) a10 a11 a10 a11 c 0 a00 a01 = ( ) ( ) 0 1 a10 a11 a00 a01 a00 a01 ( ) = ( ) a10 a11 ca00 + a10 ca01 + a11 1 0 a00 a01 = ( ) ( ) c 1 a10 a11 a00 a01 a10 a11 ( ) = ( ) a10 a11 a00 a01 0 1 a00 a01 = ( ) ( ) 1 0 a10 a11
解析的に解く場合は自由に計算することができるが、 数値計算では総当たり、かつ誤差の少ないような計算方法を探しながら、 求めていくことになる。 掃き出し法を使った数値計算はいくつか知られている。 Jordan-Gauss の方法や、Gauss の消去法がよく知られている。
行基本変形を Ruby 言語で再現してみよう。
正方行列の場合、0 ベクトルの行を含む場合など、 解が縮退することがある。 縮退しない空間の次元をランクという。