目次
続きは現在作成中

連立一次方程式と基本変形

2022-07-16

連立一次方程式を解くために行列の基本変形を利用することができます。

中学や高校で学ぶ解法と基本変形

中学・高校のおさらい

中学や高校で学んだ連立一次方程式を解くときにおこなういくつかの操作を、3つの例を使い思い出してみることにします。連立方程式を解くための基本的な方針は、複数ある方程式をうまく組み合わせ、未知数の数を減らした方程式を作り出していくということでした。

\(\left\{ \begin{array}{lr} x + y = 10 & \quad(1)\\ 2x + 4y = 32 & (2) \end{array} \right. \quad\)

この連立一次方程式を解くために、例えば \((2)\) 式から \(x\) を消去したければ、 \[(2)\,\text{式}\,-(1)\,\text{式}\,\times 2\] のようなことをよくおこないます。つまり、

\[\begin{align} 2x + 4y &= 32 \qquad \quad (2)\\ -) \quad 2x + 2y &= 20 \qquad \quad (1) \times 2\\ \hline 2y &=12 \qquad \quad(2)' \end{align}\]

とするわけです。 そして、もとの連立方程式で

\[(2)\, \text{式を}\, (2)'\, \text{式と取り替える}\]

ということをしてよいわけです。そしてここから先は、 \[\left\{ \begin{array}{rll} x + y &=& 10 & \quad(1)\\ 2y &=& 12 & \quad(2)' \end{array} \right. \quad\] を解いていけば良いわけです。

\(\left\{ \begin{array}{lr} 3x + 6y = 12 & \quad(1)\\ 2x - 5y = -1 & (2) \end{array} \right. \quad\)

この連立一次方程式で、例えば、\((2)\) 式から \(x\) を消去するということを目標にしてみます。

そのために、まず準備として、 \[(1)\,\text{式の両辺を}\,\frac{1}{3}\,\text{倍する}\] ということをしてみます。なぜこのようなことをするのかというと、\(x\) の係数が \(1\) である方程式をとりあえず1つ作りたいからです。\((1)\) 式では \(x\) の係数は \(3\) ですから \(\frac 13\) をかけるわけです。すると \[x+2y=4 \qquad\quad (1)'\] が得られます。そして、もとの連立方程式で

\((1)\) 式を \((1)'\) 式と取り替える

ということをしてよいわけです。

このようにして、もとの連立方程式の代わりに、 \[\left\{ \begin{array}{ll} x + 2y = 4 & \quad(1)'\\ 2x - 5y = -1 & \quad(2) \end{array} \right. \quad\] としてよく、\((1)\) の代わりに係数が \(1\) になっている \((1)'\) を使うことができるようになります。これで \((2)\) 式から \(x\) を消去する準備ができました。

このあとは、前の例と同じように考えていけばよいわけです。つまり、\((2)\) 式の \(x\) の係数 \(2\) に合わせて、 \[(2)\,\text{式}\,-(1)'\,\text{式}\,\times 2\] という計算をして、 \[\text{その結果を}\,(2)\,\text{式と取り替える}\] とすれば良いわけです。

\(\left\{ \begin{array}{r} 3y + 2z = 10 & \quad(1)\\ 2x + 4y -z = 8 & (2)\\ 5x - 2y +3z = 6 & (3) \end{array} \right. \quad\)

連立方程式は、式をどの順に書いても構わないわけなので、例えば、

\[(1)\,\text{式と}\, (2)\,\text{式を入れ替える} \]

ということができます。すると、 \[\left\{ \begin{array}{r} 2x + 4y -z = 8 & \quad(2)\\ 3y +2z = 10 & (1)\\ 5x - 2y +3z = 6 & (3) \end{array} \right. \quad\] となります。式の書いてある場所を入れ替えただけなので特に進歩があったとは言えないかもしれませんが、行列の基本変形と関連付けて見ると、意味のある操作であることが後にわかります。ここでのポイントは、\((1)\) には \(x\) がないのに \((2)\) には \(x\) があるということです。これは、まず \(x\) を消去していくという方針を立てている場合には、\(x\) のない方程式が一番上にあるのは都合が悪いということです。

係数だけで計算を進める

先の3つの例で出てきた計算ですが、連立一次方程式の係数だけを抜き出して出来る行列を考えてそれぞれの操作をたどってみることにすると、行に関する基本変形をおこなっているのとまったく同じであることがわかります。そのことを以下の3つの例で確認してみることにしましょう。

\(\left\{ \begin{array}{lr} x + y = 10 & \quad(1)\\ 2x + 4y = 32 & (2) \end{array} \right. \quad\)

という連立一次方程式では、係数だけを抜き出した行列を作ると次のようになります。

\[\left(\begin{array}{rr|r} 1 & 1 & 10\\ 2 & 4 & 32 \end{array}\right)\] (この行列では、もとの連立一次方程式で \(=\) の左にある係数と右にある係数を縦の線で分けてあります。)

\((2)\) 式から \(x\) を消去するために、 \[(2)\,\text{式}\,-(1)\,\text{式}\,\times 2\] ということをするのは、係数の行列に対して、 \[\text{第}\, 2\, \text{行から第} \,1\, \text{行を}\, 2\, \text{倍したものを引く}\] という「行」に関する基本変形をするのと同じことです。 つまり、

\[\left(\begin{array}{rr|r} 1 & 1 & 10\\ 2 & 4 & 32 \end{array}\right) \Rightarrow \left(\begin{array}{rr|r} 1 & 1 & 10\\ 0 & 2 & 12 \end{array}\right) \]

となります。

\(\left\{ \begin{array}{lr} 3x + 6y = 12 & \quad(1)\\ 2x - 5y = -1 & (2) \end{array} \right. \quad\)

という連立一次方程式で、係数だけを抜き出し、行列の形にまとめてみると次のようになります。

\[\left(\begin{array}{rr|r} 3 & 6 & 12\\ 2 &-5 & -1 \end{array}\right)\]

(もとの連立一次方程式で \(=\) の左にある係数と右にある係数を縦の線で分けてあります。)

\((1)\) 式の \(x\) の係数を \(1\) にするために、 \[(1)\,\text{式の両辺を}\,\times \frac13 \, \text{倍する} \] ということをすると、 \[x + 2y = 4 \quad(1)'\] が得られますが、これは係数の行列に対して、 \[\text{第}\, 1\, \text{行を} \,\frac13\, \text{倍する}\] という「行」に関する基本変形をするのと同じことです。つまり、

\[\left(\begin{array}{rr|r} 3 & 6 & 12\\ 2 & -5 & -1 \end{array}\right) \Rightarrow \left(\begin{array}{rr|r} 1 & 2 & 4\\ 2 & -5 & -1 \end{array}\right) \]

となります。これはもとの連立方程式の \((1)\) 式が \((1)'\) 式に取り変わり、

\[\left\{ \begin{array}{ll} x + 2y = 4 & \quad(1)'\\ 2x - 5y = -1 & \quad(2) \end{array} \right. \quad\]

となったことを意味します。

次は、\((1)'\) 式の \(x\) の係数が \(1\) になっているので \((2)\) 式から \(x\) を消去するために、 \[(2)\,\text{式}\,-(1)'\,\text{式} \times 2\] ということをしたいわけですが、これは係数の行列に対して、 \[\text{第}\, 2\, \text{行から第} \,1\, \text{行を}\, 2\, \text{倍したものを引く}\] という「行」に関する基本変形をするのと同じことです。 つまり、

\[\left(\begin{array}{rr|r} 1 & 2 & 4\\ 2 & -5 & -1 \end{array}\right) \stackrel{\text{第}\,2\,\text{行}-\text{第}\,1\text{行}\,\times 2}{\Longrightarrow} \left(\begin{array}{rr|r} 1 & 2 & 4\\ 0 & -9 & -9 \end{array}\right) \]

となります。

\(\left\{ \begin{array}{r} 3y +2z = 10 & \quad(1)\\ 2x + 4y -z = 8 & (2)\\ 5x - 2y +3z = 6 & (3) \end{array} \right. \quad\)

という連立一次方程式で、係数だけを抜き出し、行列の形にまとめてみると次のようになります。

\[\left(\begin{array}{rrr|r} 0 & 3 & 2 & 10\\ 2 & 4 & -1 & 8\\ 5 & -2 & 3 & 6 \end{array}\right)\] (もとの連立一次方程式で \(=\) の左にある係数と右にある係数を縦の線で分けてあります。)

\[(1)\,\text{式と}\, (2)\,\text{式を入れ替える} \] ということをすると、 \[\left\{ \begin{array}{r} 2x + 4y -z = 8 & \quad(2)\\ 3y +2z = 10 & (1)\\ 5x - 2y +3z = 6 & (3) \end{array} \right. \quad\] となりますが、これは係数の行列で \[\text{第} \, 1 \, \text{行と第} \,2 \,\text{行を入れ替える}\] という「行」に関する基本変形をするのと同じことです。つまり、

\[\left(\begin{array}{rrr|r} 0 & 3 & 2 & 10\\ 2 & 4 & -1 & 8\\ 5 & -2 & 3 & 6 \end{array}\right) \stackrel{\begin{array}{l}\text{第1行と}\\ \text{第2行を}\\ \text{入れ替える}\end{array}}{\Longrightarrow} \left(\begin{array}{rrr|r} 2 & 4 & -1 & 8\\ 0 & 3 & 2 & 10\\ 5 & -2 & 3 & 6 \end{array}\right) \]

となります。

以上3つ例の説明から、連立一次方程式を特に消去法で解く時によく使う変形は、係数の行列の「行」に関する3つの基本変形に対応しているということがわかるでしょう。

それでは次の例で、基本変形との対応を見ながら、連立一次方程式を最後まで解いてみることにします。

\(\left\{ \begin{array}{rr} x -y +2z = 1 & \quad(1)\\ -2x + 6y -z = 13 & (2)\\ -4x + 6y -6z = 20 & (3) \end{array} \right. \quad\)

という連立方程式の解を求めてみたいと思います。係数の行列と連立方程式を左右に並べて比較しながら、基本変形と未知数の消去がどのように対応しているのか詳しく見ることにします。

行列の基本変形をおこなっていくときの方針は、「係数の行列で縦線の左側を出来るだけ標準形に近づけていく」ということです。これは、「式をうまく組み合わせて未知数を消去して、連立方程式のそれぞれの式には出来るだけ未知数が1つだけ含まれるようにしていく」ということを意味します。

\[\begin{array}{c:c} \left(\begin{array}{rrr|r} 1 & -1 & 2 & 1\\ -2 & 6 & -1 & 13\\ -4 & 6 & -6 & 4 \end{array}\right) & \left\{ \begin{array}{rr} x -y +2z = 1 & \quad(1)\\ -2x + 6y -z = 13 & (2)\\ -4x + 6y -6z = 4 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 2\text{行}+1\text{行}\times2\\\scriptsize 3\text{行}+1\text{行} \times 4\end{array} & \Downarrow \begin{array}{l} \scriptsize (2) \text{と} (3) \text{から} x \text{を消去するために}\\ \scriptsize (2)+(1)\times 2 \text{を作り} (2) \text{と取り替える}\\ \scriptsize (3)+(1)\times 4 \text{を作り} (3) \text{と取り替える}\end{array}\\ \left(\begin{array}{rrr|r} 1 & -1& 2 & 1\\ 0 & 4 & 3 & 15\\ 0 & 2 & 2 & 8 \end{array}\right) & \left\{ \begin{array}{rr} x -y +2z = 1 & \quad(1)\\ 4y +3z = 15 & (2)\\ 2y +2z = 8 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 3\text{行}\times \frac12\end{array} & \Downarrow \begin{array}{l} \scriptsize (3) \text{で} y \text{の係数を} 1 \text{にするために}\\ \scriptsize (3) \text{の両辺に} \frac12 \text{を掛ける}\end{array}\\ \left(\begin{array}{rrr|r} 1 & -1& 2 & 1\\ 0 & 4 & 3 & 15\\ 0 & 1 & 1 & 4 \end{array}\right) & \left\{ \begin{array}{rr} x -y +2z = 1 & \quad(1)\\ 4y +3z = 15 & (2)\\ y +z = 4 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 3\text{行を} 2\text{行と入れ替える}\end{array} & \Downarrow \begin{array}{l} \scriptsize (3) \text{と} (2) \text{を入れ替える}\end{array}\\ \left(\begin{array}{rrr|r} 1 & -1& 2 & 1\\ 0 & 1 & 1 & 4\\ 0 & 4 & 3 & 15 \end{array}\right) & \left\{ \begin{array}{rr} x -y +2z = 1 & \quad(1)\\ y +z = 4 & (3)\\ 4y +3z = 15 & (2) \end{array} \right. \\ \Downarrow\begin{array}{l} \scriptsize 1\text{行}+2\text{行}\\ \scriptsize 3\text{行}-2\text{行} \times 4\end{array} & \Downarrow \begin{array}{l} \scriptsize (1) \text{と} (2) \text{から} y \text{を消去するために}\\ \scriptsize (1)+(3) \text{を作り} (1) \text{と取り替える}\\ \scriptsize (2)-(3)\times 4 \text{を作り} (2) \text{と取り替える}\\\end{array}\\ \left(\begin{array}{rrr|r} 1 & 0& 3 & 5\\ 0 & 1 & 1 & 4\\ 0 & 0 & -1 & -1 \end{array}\right) & \left\{ \begin{array}{rr} x +3z = 5 & \quad(1)\\ y +z = 4 & (3)\\ -z = -1 & (2) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 3\text{行}\times (-1)\end{array} & \Downarrow \begin{array}{l} \scriptsize (2) \text{で} z \text{の係数を} 1 \text{にするために}\\ \scriptsize (2) \text{の両辺に} -1 \text{を掛ける}\end{array}\\ \left(\begin{array}{rrr|r} 1 & 0& 3 & 5\\ 0 & 1 & 1 & 4\\ 0 & 0 & 1 & 1 \end{array}\right) & \left\{ \begin{array}{rr} x +3z = 5 & \quad(1)\\ y +z = 4 & (3)\\ z = 1 & (2) \end{array} \right. \\ \Downarrow\begin{array}{l} \scriptsize 1\text{行}-3\text{行}\times 3\\ \scriptsize 2\text{行}-3\text{行} \end{array} & \Downarrow \begin{array}{l} \scriptsize (1) \text{と} (3) \text{から} z \text{を消去するために}\\ \scriptsize (1)-(2) \times 3 \text{を作り} (1) \text{と取り替える}\\ \scriptsize (3)-(2)\text{を作り} (3) \text{と取り替える}\\\end{array}\\ \left(\begin{array}{rrr|r} 1 & 0& 0 & 2\\ 0 & 1 & 0 & 3\\ 0 & 0 & 1 & 1 \end{array}\right) & \left\{ \begin{array}{rr} x = 2 & \quad(1)\\ y = 3 & (3)\\ z = 1 & (2) \end{array} \right. \\ \end{array}\]

これで、基本変形により出来るだけ標準形に近づけるという目的は達成できています。そして、この連立方程式の解は \[x=2,y=3,z=1\] の1組だけであることがわかりました。

補足:この例では、式の入れ替えを使っているため、式番号と行番号が一致しなくなります。どの式がどの行と対応しているのかきちんと把握していればなにも問題ありませんが、番号の不一致がどうしても気持ち悪いと思う場合は、式の入れ替えが行われるときはいつも式番号を上から順に \((1),(2),(3)\) とつけ直せば良いでしょう。

それでは次に、解が無数にあるような連立方程式で基本変形との対応を見てみることにしましょう。

\(\left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ -4x + 9y -6z = 1 & (2)\\ x -3y +3z = -1 & (3) \end{array} \right. \quad\)

という連立方程式の解を求めてみたいと思います。前の例と同様に、係数の行列と連立方程式を左右に並べて比較しながら、基本変形と未知数の消去がどのように対応しているのか詳しく見ることにします。

この例でも行列の基本変形をおこなっていくときの方針は、「係数の行列で縦線の左側を出来るだけ標準形に近づけていく」ということです。つまり、「式をうまく組み合わせて未知数を消去して、連立方程式のそれぞれの式には出来るだけ未知数が1つだけ含まれるようにしていく」ということになります。例えば、次のように進めることができます。

\[\begin{array}{c:c} \left(\begin{array}{rrr|r} 1 & -2 & 1 & 0\\ -4 & 9 & -6 & 1\\ 1 & -3 & 3 & -1 \end{array}\right) & \left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ -4x + 9y -6z = 1 & (2)\\ x - 3y +3z = -1 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 2\text{行}+1\text{行}\times4\\\scriptsize 3\text{行}-1\text{行} \end{array} & \Downarrow \begin{array}{l} \scriptsize (2) \text{と} (3) \text{から} x \text{を消去するために}\\ \scriptsize (2)+(1)\times 4 \text{を作り} (2) \text{と取り替える}\\ \scriptsize (3)-(1) \text{を作り} (3) \text{と取り替える}\end{array}\\ \left(\begin{array}{rrr|r} 1 & -2& 1 & 0\\ 0 & 1 & -2 & 1\\ 0 & -1 & 2 & -1 \end{array}\right) & \left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ y -2z = 1 & (2)\\ -y +2z = -1 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l} \scriptsize 1\text{行}+2\text{行}\times 2\\ \scriptsize 3\text{行}+2\text{行} \end{array} & \Downarrow \begin{array}{l} \scriptsize (1) \text{と} (3) \text{から} y \text{を消去するために}\\ \scriptsize (1)+(2)\times 2 \text{を作り} (1) \text{と取り替える}\\ \scriptsize (3)+(2) \text{を作り} (3) \text{と取り替える}\\\end{array}\\ \left(\begin{array}{rrr|r} 1 & 0& -3 & 2\\ 0 & 1 & -2 & 1\\ 0 & 0 & 0 & 0 \end{array}\right) & \left\{ \begin{array}{rr} x -3z = 2 & \quad(1)\\ y -2z = 1 & (2)\\ 0 = 0 & (3) \end{array} \right. \end{array}\]

さて、いまのところ2行2列のところまでは標準形に近づけることができました。そして、3行目は \(0\) ばかりが並んでいます。さらに標準形に近づけるには、3列目を \(\left(\begin{array}{r}0\\0\\1\end{array}\right)\) または \(\left(\begin{array}{r}0\\0\\0\end{array}\right)\) にしなくてはなりません。いま、行に関する基本変形だけを使うことにしてあるわけですから、このようなことを実現したければ2列目までに影響がでないようにしたまま、まず \((3,3)\) 成分を \(1\) にしなくてはなりません。しかし、行に関する基本変形だけではそれは無理です。ですから、基本変形の適用はここで終わりです。

係数の行列の縦線の左側を完全には標準形にできませんでしたが、実はこれでちゃんと解を読み取ることができます。最後に導かれた方程式を見てみましょう。

\((3)\)\(0=0\) という式は \(x,y,z\) がどんな数だとしても成り立つ当たり前の式です。ですから、\(x,y,z\) にたいして何の制約ももたらしません。というわけで、\((3)\) だけを考えると、特に \[z\, \text{は任意の数}\] でよいということになります。 しかし、\((1),(2)\) を考えに入れると \(x,y,z\) の3つともが任意の数でよいというわけには行きません。

\((1)\)\(x\)\(z\) の間に \(x-3z=2\) という関係があると言っているわけですがこの式は \[x=2+3z\] と変形できます。つまり、\(x\) の値は \(z\) の値から \(2+3z\) を計算してできる数でなければならないと言っているわけです。

\((2)\)\(y\)\(z\) の間に \(y-2z=1\) という関係があると言っているわけですがこの式は \[y=1+2z\] と変形できます。つまり、\(y\) の値は \(z\) の値から \(1+2z\) を計算してできる数でなければならないと言っているわけです。

というわけで、この連立方程式の解は

\[ \left\{ \begin{array}{rr} x = 2+3z \\ y = 1 +2z \\ z\, \text{は任意の数} \end{array} \right. \]

というように書いておけばよいことになります。

補足:この例の連立方程式の解は、\(z\) の値を自由に変化できる数と考えることにより、\(x\)\(y\)\(z\) の値から自動的に決まるようになっています。ですから、もちろん解は無数にあります。そして自由に変化できる \(z\) の値をあらためて例えば \(t\) という変数であらわすことにし、数ベクトルの流儀で表現し直すと、解は

\[ \left(\begin{array}{r}x\\y\\z\end{array}\right) = \left(\begin{array}{r}2\\1\\0\end{array}\right) +t \left(\begin{array}{r}3\\2\\1\end{array}\right), \text{ここで}\, t\, \text{は任意の数} \]

と書くことができます。これからもわかるように解は、空間の中の点 \(\left(\begin{array}{r}2\\1\\0\end{array}\right)\) を通り、方向が \(\left(\begin{array}{r}3\\2\\1\end{array}\right)\) である直線の上にずらっと並んでいるわけです。

今度は、解が1組もないような連立方程式で基本変形との対応を見てみることにしましょう。

\(\left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ -4x + 9y -6z = 1 & (2)\\ x -3y +3z = 2 & (3) \end{array} \right. \quad\)

という連立方程式の解を求めてみたいと思います。直前の例とそっくりな方程式ですが、微妙な違いがあり、そのために実は解がないことが後にわかります。

それではこれまでの例と同様に、係数の行列と連立方程式を左右に並べて比較しながら、基本変形と未知数の消去がどのように対応しているのか詳しく見ることにします。

この例でも行列の基本変形をおこなっていくときの方針は、「係数の行列で縦線の左側を出来るだけ標準形に近づけていく」ということです。つまり、「式をうまく組み合わせて未知数を消去して、連立方程式のそれぞれの式には出来るだけ未知数が1つだけ含まれるようにしていく」ということになります。例えば、次のように進めることができます。

\[\begin{array}{c:c} \left(\begin{array}{rrr|r} 1 & -2 & 1 & 0\\ -4 & 9 & -6 & 1\\ 1 & -3 & 3 & 2 \end{array}\right) & \left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ -4x + 9y -6z = 1 & (2)\\ x - 3y +3z = 2 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l}\scriptsize 2\text{行}+1\text{行}\times4\\\scriptsize 3\text{行}-1\text{行} \end{array} & \Downarrow \begin{array}{l} \scriptsize (2) \text{と} (3) \text{から} x \text{を消去するために}\\ \scriptsize (2)+(1)\times 4 \text{を作り} (2) \text{と取り替える}\\ \scriptsize (3)-(1) \text{を作り} (3) \text{と取り替える}\end{array}\\ \left(\begin{array}{rrr|r} 1 & -2& 1 & 0\\ 0 & 1 & -2 & 1\\ 0 & -1 & 2 & 1 \end{array}\right) & \left\{ \begin{array}{rr} x -2y +z = 0 & \quad(1)\\ y -2z = 1 & (2)\\ -y +2z = 1 & (3) \end{array} \right. \\ \Downarrow\begin{array}{l} \scriptsize 1\text{行}+2\text{行}\times 2\\ \scriptsize 3\text{行}+2\text{行} \end{array} & \Downarrow \begin{array}{l} \scriptsize (1) \text{と} (3) \text{から} y \text{を消去するために}\\ \scriptsize (1)+(2)\times 2 \text{を作り} (1) \text{と取り替える}\\ \scriptsize (3)+(2) \text{を作り} (3) \text{と取り替える}\\\end{array}\\ \left(\begin{array}{rrr|r} 1 & 0& -3 & 2\\ 0 & 1 & -2 & 1\\ 0 & 0 & 0 & 2 \end{array}\right) & \left\{ \begin{array}{rr} x -3z = 2 & \quad(1)\\ y -2z = 1 & (2)\\ 0 = 2 & (3) \end{array} \right. \end{array}\]

さて、いまのところ2行2列のところまでは標準形に近づけることができました。そして、3行目は \(0\) ばかりが並んでいます。さらに標準形に近づけるには、3列目を \(\left(\begin{array}{r}0\\0\\1\end{array}\right)\) または \(\left(\begin{array}{r}0\\0\\0\end{array}\right)\) にしなくてはなりません。いま、行に関する基本変形だけを使うことにしてあるわけですから、このようなことを実現したければ2列目までに影響がでないようにしたまま、まず \((3,3)\) 成分を \(1\) にしなくてはなりません。しかし、行に関する基本変形だけではそれは無理です。ですから、基本変形の適用はここで終わりです。

係数の行列の縦線の左側を完全には標準形にはできませんでしたが、実はこれでちゃんと解を読み取ることができます。最後に導かれた方程式を見てみましょう。

\((3)\)\(0=2\) という式は \(x,y,z\) がどんな数だとしても絶対に成り立たない式です。ですから、この連立方程式には解はありません。

基本変形を使って連立一次方程式を解く

これまでに例を使って説明してきたことから、連立一次方程式は、係数だけを取り出して行列をつくり、「行」に関する基本変形をうまく繰り返していくことにより解けるのではないかということが想像できます。つまり、行に関する基本変形をうまく使っていき、最後に係数の行列を

\[\left( \begin{array}{ccccccc|c} 1 & & & & * & \cdots & * & \star\\ & 1 & & & * & \cdots & * & \star\\ & & \ddots & & \vdots & & \vdots &\vdots\\ & & & 1 & * & \cdots & * &\star\\ 0 & 0 & \cdots & 0 & 0 &\cdots & 0 & \star\\ \vdots & \vdots & & \vdots &\vdots & & \vdots &\vdots\\ 0 & 0 &\cdots & 0 & 0 & \cdots & 0 & \star \end{array}\right) \tag{$\bigstar$}\]

のような形にしていくことにより解が見つけられそうであるというわけです。

ですが、実は「行」だけの基本変形では行き詰まってしまうことがあるのです。 その例を次に示し、ついでに解を求めてみます。

\(\left\{ \begin{array}{rr} x + y + 2z &=& 10 & \quad(1)\\ - z &=& 7 & (3) \end{array} \right. \quad\)

という連立一次方程式を考えてみます。 係数を取り出して行列にまとめると、 \[\left(\begin{array}{rrr|r} 1 & 1 & 2 &10\\ 0 & 0 & -1 & 7 \end{array}\right)\] となります。そしての行列に行に関する基本変形だけを使って、この例の直前で見た \((\bigstar)\) の形にしていくことができるのか考えてみます。

すでに \((1,1)\) 成分は \(1\) になってます。そして運の良いことに、すでにその下はすべて \(0\) になっています。

次は \((2,2)\) 成分を \(1\) にします。そして、第1列はそのまま変わらないようにしたいわけです。

ところで、行に関する基本変形としては、「ある行と別の行を入れ替える」、「ある行に別の行のナントカ倍を足す」、「ある行をナントカ倍する」という3つの操作があるわけです。

しかし、この行列に行に関するこの3つのどの基本変形を使っても、 第1列をそのままにして、\((2,2)\) 成分を \(0\) ではない数にはできないことがわかります。

そこで、3種類ある「列」に関する基本変形のうち \[ある列と別の列を入れ替える\] という変形だけは使って良いことにします。

この例では、第2列と 第3列を入れ替えてみることにしましょう。すると、 \[\left(\begin{array}{rrr|r} 1 & 2 & 1 &10\\ 0 & -1 & 0 & 7 \end{array}\right)\] となります。 ところで、列の入れ替えはもとの連立方程式に対してどんな操作を行うことに対応しているのでしょうか。ちょっと考えるとわかりますが、それは、未知数を書く位置を入れ替えていることに相当します。つまり、この操作は、もともとの方程式で \(y\) の位置と \(z\) の位置を入れ替えて、 \[\left\{ \begin{array}{ccr} x + 2z+ y &=& 10 & \quad(1)\\ - z &=& 7 & (3) \end{array} \right. \quad\] と書き換えたのと同じことです。これで困難を乗り切ることができます。これで再び「行」に関する基本変形を使って、

\[\left(\begin{array}{rrr|r} 1 & 2 & 1 &10\\ 0 & -1 & 0 & 7 \end{array}\right) \stackrel{2\text{行}\times(-1)}{\Rightarrow} \left(\begin{array}{rrr|r} 1 & 2 & 1 &10\\ 0 & 1 & 0 & -7 \end{array}\right) \stackrel{1\text{行}-2\text{行}\times(2)}{\Rightarrow} \left(\begin{array}{rrr|r} 1 & 0 & 1 &24\\ 0 & 1 & 0 & -7 \end{array}\right) \]

とできるわけです。この、最後の行列が目的の形です。そしてこの行列から、もともとの連立方程式は \[\left\{\begin{array}{cc} x+0z+y &=& 24\\ 0x+z+0y &=& -7 \end{array}\right.\] と書き換えられるということが読み取れます。(もともとの連立方程式とは \(y\) の位置と \(z\) の位置が入れ替わっていることに注意しましょう。)

つまり、

\[\left\{\begin{array}{ccr} x &=& -y + 24 & \qquad \quad y\,\text{は任意の数}\\ z &=& -7 \end{array}\right.\]

となっているわけで、これが解です。

連立一次方程式を基本変形で解くには

これまでの説明からわかるように、許される操作は、「行に関する基本変形」と「列を入れ替える基本変形」だけです。 ただし、「列を入れ替える基本変形」をおこなうと、対応している未知数の順番が入れ替わることに注意しましょう。 これらの基本変形を適切に使っていくことにより、係数の行列は、

\[\left( \begin{array}{ccccccc|c} 1 & & & & * & \cdots & * & \star\\ & 1 & & & * & \cdots & * & \star\\ & & \ddots & & \vdots & & \vdots &\vdots\\ & & & 1 & * & \cdots & * &\star\\ 0 & 0 & \cdots & 0 & 0 &\cdots & 0 & \star\\ \vdots & \vdots & & \vdots &\vdots & & \vdots &\vdots\\ 0 & 0 &\cdots & 0 & 0 & \cdots & 0 & \star \end{array}\right)\]

のような形になり、ここから解を読み取ることができるわけです。

解の個数と係数の行列

連立一次方程式の解の個数は次のような場合があります。

  • 一組に定まる
  • 無数にある
  • ない

係数の行列を基本変形して、解を読み取れる状態になったところから、解とその個数を読み取るいくつかの例を考えることにします。 以下の例では「行に関する基本変形だけ」を仮定していますが、「列の入れ替え」を行った場合の事も考えに入れたい場合は、未知数の順番が入れ替わっているというように読み替えてください。

未知数が \(x,y,z,w\) で式が4つある連立一次方程式があるとします。

この連立方程式の係数行列に「行」だけに関する基本変形をおこなった結果、 \[\left(\begin{array}{rrrr|c} 1 & 0 & 0 & 0 & a\\ 0 & 1 & 0 & 0 & b\\ 0 & 0 & 1 & 0 & c\\ 0 & 0 & 0 & 1 & d\\ \end{array}\right)\] という形になったとします。 これより、解を読み取ると、 \[\left\{\begin{align} x &=a\\ y &=b\\ z &=c\\ w &=d\\ \end{align}\right.\] となります。 このとき、解は一組に定まっています。

未知数が \(x,y,z,w\) で式が4つある連立一次方程式があるとします。

この連立方程式の係数行列に「行」だけに関する基本変形をおこなった結果、 \[\left(\begin{array}{rrrr|c} 1 & 0 & 0 & p & a\\ 0 & 1 & 0 & q & b\\ 0 & 0 & 1 & r & c\\ 0 & 0 & 0 & s & d\\ \end{array}\right)\] という形になったとします。 これより解を読み取ると、とりあえず、 \[\left\{\begin{align} x + pw&=a\\ y + qw&=b\\ z + rw&=c\\ 0 &=d\\ \end{align}\right.\] となり、さらにわかりやすく書き直すと、 \[\left\{\begin{align} x &=a-pw\\ y &=b-qw\\ z &=c-rw\\ 0 &=d\\ \end{align}\right.\]

最後の式 \(0 =d\)\(d\)\(0\) ではなければ成り立たたないことに注意すると、

  • \(d\)\(0\) になっていたら解は \[\left\{\begin{align} x &=a-pw\\ y &=b-qw\\ z &=c-rw\\ w &=\, \text{任意の数} \end{align}\right.\] となり、\(w\) はどんな数でも良いのですから無数の解があることになります。そして \(x,y,z\)\(w\) の値から自動的に決まるわけです。
  • \(d\)\(0\) で無ければ解はないということになります。

未知数が \(x,y,z,w\) で式が5つある連立一次方程式があるとします。

この連立方程式の係数行列に「行」だけに関する基本変形をおこなった結果、 \[\left(\begin{array}{rrrr|c} 1 & 0 & 0 & 0 & a\\ 0 & 1 & 0 & 0 & b\\ 0 & 0 & 1 & 0 & c\\ 0 & 0 & 0 & 0 & d\\ 0 & 0 & 0 & 0 & e \end{array}\right)\] という形になったとします。 これより、解を読み取ると、とりあえず \[\left\{\begin{align} x &=a\\ y &=b\\ z &=c\\ 0 &=d\\ 0 &=e \end{align}\right.\] となります。

最後の2つの式 \(0 =d,0=e\)\(d\)\(e\) が共に \(0\) ではなければ成り立たちません。このことに注意すると、

  • \(d,e\) が共に \(0\) になっていたら解は \[\left\{\begin{align} x &=a\\ y &=b\\ z &=c\\ w &=\, \text{任意の数} \end{align}\right.\] となり、\(w\) はどんな数でも良いのですから無数の解があることになります。
  • \(d\) または \(e\)\(0\) で無ければ解はないということになります。

未知数が \(x,y,z,w\) で式が3つある連立一次方程式があるとします。この連立方程式の係数行列に「行」だけに関する基本変形をおこなった結果、 \[\left(\begin{array}{rrrr|c} 1 & 0 & 0 & p & a\\ 0 & 1 & 0 & q & b\\ 0 & 0 & 1 & r & c\\ \end{array}\right)\] という形になったとします。 これより、解を読み取ると、とりあえず、 \[\left\{\begin{align} x + pw&=a\\ y +qw&=b\\ z +rw&=c\\ \end{align}\right.\] となります。 これをわかりやすく書き直すと、 \[\left\{\begin{align} x &=a -pw\\ y &=b-qw\\ z &=c-rw\\ w &= \text{任意の数} \end{align}\right.\] となります。 \(w\) はどんな数でも良いのですから、このとき、解は無数にあります。

おまけ

中学や高校で連立一次方程式のことを学んだ人は、「未知数の数と式の数が一致していたら解は一組」とか「未知数の数より式の数が少なかったら解は無数にある」とか「未知数の数が式の数より多かったら解はない」というような印象を持ったかもしれません。

まあ、だいたいそういうことが多いのですが、厳密には違うということをこれまでの説明でわかってもらえると思います。

念のため、例を使って補足しておきます。

\(\left\{ \begin{array}{r} x - 3y +2z = 10 & \quad(1)\\ 2x -6y -4z = 20 & (2)\\ 3x -5y -2z = 3 & (3)\\ \end{array} \right. \quad\)

という連立一次方程式では、\((1)\) 式の両辺を \(2\) 倍すると \((2)\)式になってしまいます。 ですから、この連立方程式では \((1)\) 式さえあれば\((2)\) 式は不要で、実質的に式の数は2つです。 そしてこのときもちろん \[(2)\,\text{式}\,-(1)\,\text{式}\,\times 2\] をおこなうと \(0=0\) という当たり前でなんの情報も含まない式が得られます。

この操作は、係数の行列で、

第 2 行から第 1 行を 2 倍したものを引く

という「行」に関する基本変形をするのと同じことで、その結果第 \(2\) 行がすべて \(0\) になるということに対応しています。そして、このとき解は無数にでてくるわけです。

前の例とよく似ている次の連立一次方程式を考えてみましょう。 \(\left\{ \begin{array}{r} x - 3y +2z = 10 & \quad(1)\\ 2x -6y -4z = 18 & (2)\\ 3x -5y -2z = 3 & (3)\\ \end{array} \right. \quad\)

この連立一次方程式では、\((1)\) 式の両辺を \(2\) 倍しても \((2)\)式にはなりません。 ですから、この連立方程式では \((1)\) 式さえあれば\((2)\) 式は不要というわけには行きません。

ところでこのときもちろん \[(2)\,\text{式}\,-(1)\,\text{式}\,\times 2\] をおこなうと \(0=2\) という式が得られますが、この式が成り立つことはありません。 ですからこの時点で、この連立一次方程式には解がないと断言できます。

この操作は係数の行列で、 \[\text{第}\, 2\, \text{行から第} \,1\, \text{行を}\, 2\, \text{倍したものを引く}\] という「行」に関する基本変形をするのと同じことですが、その結果、係数行列の第 \(2\) 行が \(\left(\begin{array}{rrr|r}0 & 0 & 0 & 2\end{array}\right)\) になるということに対応しています。 もちろんこの行からも、 \(0=2\) を読み取ることができ、これはありえないことなので、この連立一次方程式には解がないと断言できます。

以上の2つの例を一般化した結論を言うと次のようになります。

連立一次方程式の中のいくつかの式をそれぞれナントカ倍した式を作り、それらを足し合わせた式を作ったとき、

  1. 連立一次方程式の中にあるいずれかの式ができればその式は不要です。
  2. 連立一次方程式の中にあるいずれかの式で、未知数の係数はすべて一致していても定数の部分だけが一致しないものができるとき、解はありません。

補足
1.で述べたことは、係数の行列の階数と密接に関係しています。係数の行列の階数は連立方程式で本質的に必要なものがいくつあるのかということと対応してるのです。このことは機会があれば説明します。

まとめ

連立一次方程式を解くために行列の基本変形を利用することができます。

消去法で連立一次方程式を解くときによく使う計算は、係数だけを抜き出して行列にして考えると、行に関する基本変形と同じことをしていることになります。

連立一次方程式を係数行列を使って解くときに許される操作は、「行に関する基本変形」と「列を入れ替える基本変形」だけです。 ただし、「列を入れ替える基本変形」をおこなうと、対応している未知数の順番が入れ替わります。

これらの基本変形を適切に使っていくことにより、係数の行列は斜め下 \(45\) 度方向に \(1\) が並ぶ適切な形にでき、そこから解を読み取ることができます。

基本変形と行列の階数 数ベクトルの空間の計量