解を持つための条件

連立一次方程式 Ax=bA \bm{x} = \bm{b} が解を持つためには、係数行列 AA と係数拡大行列 (A,b)(A, \bm{b}) の階数が等しいことが必要にして十分です。

連立一次方程式の解法を導入するにあたって、係数拡大行列を定義するとともに、連立一次方程式が解を持つための条件について明らかにします。

係数拡大行列の定義

まず、連立一次方程式を行列により表す方法について再整理し、係数拡大行列を定義します。

連立一次方程式の行列による表現

nn 個の変数 x1,x2,,xnx_1, x_2, \cdots, x_n に関する mm 個の式からなる、次のような連立一次方程式について考えます。

{   a11x1+a12x2++a1nxn=b1a21x1+a22x2++a2nxn=b2am1x1+am2x2++amnxn=bm(5.1.1) \begin{equation} \left\{ \; \, \begin{alignat*} {4} && a_{11} x_1 &+ a_{12} x_2 &+ \cdots &+ a_{1n} x_n &= b_1 \\ && a_{21} x_1 &+ a_{22} x_2 &+ \cdots &+ a_{2n} x_n &= b_2 \\ &&&& \vdots \quad \\ && a_{m1} x_1 &+ a_{m2} x_2 &+ \cdots &+ a_{mn} x_n &= b_m \\ \end{alignat*} \right. \end{equation} \tag{5.1.1}

いま、行列 AA と列ベクトル x,b\bm{x}, \bm{b} を次のように置くと、

A=(a11a12a1na21a22a2nam1am2amn),x=(x1x2xn),b=(b1b2bm) \begin{gather*} A = \begin{pmatrix} \, a_{11} \, & a_{12} & \cdots & \, a_{1n} \, \\ \, a_{21} \, & a_{22} & \cdots & \, a_{2n} \, \\ \, \vdots \, & \vdots & \ddots & \, \vdots \, \\ \, a_{m1} \, & a_{m2} & \cdots & \, a_{mn} \, \\ \end{pmatrix} , \\ \\ \bm{x} = \begin{pmatrix} \, x_1 \, \\ x_2 \\ \vdots \\ \, x_n \, \end{pmatrix} , \quad \bm{b} = \begin{pmatrix} \, b_1 \, \\ b_2 \\ \vdots \\ \, b_m \, \end{pmatrix} \end{gather*}

連立一次方程式(5.1.1)式は、次のように簡単に表すことができます。

Ax=b \begin{equation} \tag{5.1.2} A \bm{x} = \bm{b} \end{equation}

ここで、AAm×nm \times n 行列であり、x\bm{x}nn 項列ベクトル、b\bm{b}mm 項列ベクトルです。

係数行列とは

(5.1.2)式において、AA を特に係数行列(coefficient matrix\text{coefficient matrix})といいます。

すなわち、係数行列とは、連立一次方程式(5.1.1)式の係数を成分として持つ行列であるといえます。

ここまでの内容は、クラメルの公式基底と次元の準備で既に導入した、連立一次方程式を行列を用いて表す方法を再整理したものです。

係数拡大行列とは

係数行列 AA に列ベクトル b\bm{b} を付け加えた、次のような m×(n+1)m \times (n + 1) 行列を係数拡大行列といい、(A,b)(A, \bm{b}) と表します。

(A,b)=(a11a12a1nb1a21a22a2nb2am1am2amnbn) \begin{align*} (A, \bm{b}) = \left( \begin{array} {cccc:c} a_{11} & a_{12} & \cdots & a_{1n} & b_{1} \\ a_{21} & a_{22} & \cdots & a_{2n} & b_{2} \\ \vdots & \vdots & \ddots & \vdots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} & b_{n} \\ \end{array} \right) \end{align*}

すなわち、係数拡大行列とは、連立一次方程式(5.1.1)式の係数と定数を成分として持つ行列であるといえます。

(5.1.1)式のように、mm 個の式からなる連立方程式では、係数行列 AA の行数(mm)と列ベクトル b\bm{b} の要素の数(mm)は等しくなります。したがって、一般の連立一次方程式に対して係数拡大行列を定めることができます。

係数拡大行列は、連立一次方程式が解を持つための条件や具体的に与えられた連立一次方程式の解法について考えるうえで、重要な役割を果たします。

用語について(係数拡大行列)

参照する際に便利であることから、ここでは、係数拡大行列という用語を用います。しかしながら、係数拡大行列という用語を使わない教科書もあります([2], [6] など)。また、[15] では、係数行列の項目の中に係数拡大行列の説明があるのみで、独立した見出し語ではありません。

[14] では、係数拡大行列に対応する用語として augmented matrix\text{augmented matrix} がみられます。しかしながら、これは、拡大係数行列そのものを指す語というよりも 22 つの行列の列を組み合わせることで得られる行列を指しています。(augment\text{augment} は「拡大する」や「増補する」等の意味を持った動詞です。)


解を持つための条件

係数拡大行列を用いて、連立一次方程式が解を持つことと同値な条件を導きます。


定理 5.1(連立一次方程式が解を持つための条件)

AA(m,n)(m, n) 型行列とする。連立一次方程式 Ax=bA \bm{x} = \bm{b} が解を持つためには、AA の階数と (A,b)(A, \bm{b}) の階数が等しいことが必要にして十分である。

rankA=rank(A,b) \begin{equation} \tag{5.1.3} \text{rank} \, A = \text{rank} \, (A, \bm{b}) \end{equation}



解説

解が存在するための条件:係数行列と係数拡大行列の階数が等しい

定理 5.1(連立一次方程式が解を持つための条件)は、連立一次方程式に解が存在するための条件(必要十分条件)を示しています。

すなわち、連立一次方程式 Ax=bA \bm{x} = \bm{b} が解を持つための必要十分条件は「係数行列 AA と係数拡大行列 (A,b)(A, \bm{b}) の階数が等しいこと」です。これは、一般の連立一次方程式について成り立ちます。

解の有無の判定方法

定理 5.1(連立一次方程式が解を持つための条件)を用いることで、具体的に与えられた連立一次方程式 Ax=bA \bm{x} = \bm{b} の解の有無は、次の手順により判定できます。

  • 係数行列の階数 rank(A)\mathrm{rank}(A) を計算する。
  • 拡大係数行列の階数 rank(A,b)\mathrm{rank}(A, \bm{b}) を計算する。
  • それぞれの階数の値を比較する。
    • それぞれの階数の値が等しいならば、Ax=bA \bm{x} = \bm{b} は解を持つ。

      rank(A)=rank(A,b) \mathrm{rank}(A) = \mathrm{rank}(A, \bm{b})

    • それぞれの階数の値が等しくないならば、Ax=bA \bm{x} = \bm{b} は解を持たない。

      rank(A)rank(A,b) \mathrm{rank}(A) \neq \mathrm{rank}(A, \bm{b})

しかしながら、上記のような判定方法(定理 5.1 を直接適用する方法)は実用的ではありません。22 つの行列の階数を求める必要があり、これにかなりの手間がかかるためです。

より効率的な解の有無の判定方法

実際には、次のような判定方法(行列の基本変形を利用する方法)の方が効率的です(連立一次方程式の解の有無の判定方法を参照)。

  • 拡大係数行列 (A,b)(A, \bm{b})基本変形を施して、階段行列に変形する。
  • 変形により得られた階段行列の形から、解の存在を判定する。

この判定方法は、計算の効率性や実用性の点で、定理 5.1 を直接適用する方法よりも優れているといえます。



証明

AA の列ベクトルを a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} とすると、Ax=bA \bm{x} = \bm{b} が解を持つことは x1a1++xnan=bx_{1} \bm{a}_{1} + \cdots + x_{n} \bm{a}_{n} = \bm{b} を満たすような (x1,,xn)Kn(x_{1}, \cdots, x_{n}) \in K^{n} が存在することに等しい。これは、b\bm{b}a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} の線型結合で表せることと同値である。したがって、定理 4.35(部分空間の次元)より次が成り立つ。

ba1,,ana1,,an=a1,,an,bdima1,,an=dima1,,an,b \begin{gather*} & \bm{b} \in \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle \\ \Leftrightarrow & \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle = \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \\ \Leftrightarrow & \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle = \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \\ % \Leftrightarrow & \text{rank} \, A = \text{rank} \, (A, \bm{b}) \\ \end{gather*}

ここで、dima1,,an\dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle は、a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} のうち線型独立なベクトルの最大数に等しく、定義より AA の階数に等しい。同様に、dima1,,an,b\dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle(A,b)(A, \bm{b}) の階数に等しい。したがって、Ax=bA \bm{x} = \bm{b} が解を持つことは、AA の階数と (A,b)(A, \bm{b}) の階数が等しいことと同値である。\quad \square



証明の考え方

ベクトル空間の次元に関する定理(定理 4.30(線型独立なベクトルと次元)定理 4.35(部分空間の次元))による同値変形を用います。

具体的には、(11Ax=bA \bm{x} = \bm{b} が解を持つことと同値な条件を AA の列ベクトルにより表現し、(22)列ベクトルが生成する部分空間の次元に関して、定理 4.35(部分空間の次元)を適用します。

(1)解を持つための条件(係数行列の列ベクトルによる表現)

  • Ax=bA \bm{x} = \bm{b} が解を持つことと同値な条件を、AA の列ベクトルを用いて表します。

  • AA の列ベクトルを a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} とすると、係数行列は A=(a1,,an)A = (\, \bm{a}_{1}, \cdots, \bm{a}_{n} \,) のように表すことができます。

    A=(a1,,an) \begin{align*} A = (\, \bm{a}_{1}, \cdots, \bm{a}_{n} \,) \end{align*}

  • また、xKn\bm{x} \in K^{n} を、次のようおきます。

    x=(x1xn) \begin{align*} \bm{x} = \begin{pmatrix} \, x_{1} \, \\ \vdots \\ \, x_{n} \, \end{pmatrix} \end{align*}

  • このとき、Ax=bA \bm{x} = \bm{b} が解を持つことは、x1a1++xnan=bx_{1} \bm{a}_{1} + \cdots + x_{n} \bm{a}_{n} = \bm{b} を満たすような x1,,xnx_{1}, \cdots, x_{n} が存在することと同値であるといえます。

    • これは、上記の列ベクトルによる表記により、Ax=bA \bm{x} = \bm{b} が、次のように表せることによります。

      Ax=b    (a1,,an)(x1xn)=b  x1a1++xnan=b \begin{align*} A \bm{x} = \bm{b} \; & \Leftrightarrow \; (\, \bm{a}_{1}, \cdots, \bm{a}_{n} \,) \begin{pmatrix} x_{1} \\ \vdots \\ x_{n} \end{pmatrix} = \bm{b} \\ & \Leftrightarrow \; x_{1} \bm{a}_{1} + \cdots + x_{n} \bm{a}_{n} = \bm{b} \end{align*}

    • すなわち、Ax=bA \bm{x} = \bm{b} を満たすような xKn\bm{x} \in K^{n} が存在することは、x1a1++xnan=bx_{1} \bm{a}_{1} + \cdots + x_{n} \bm{a}_{n} = \bm{b} を満たすような (x1,,xn)Kn(\, x_{1}, \cdots, x_{n} \,) \in K^{n} が存在することと同値であるといえます。

  • また、これは、b\bm{b}a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} の線型結合で表せることと同値です。このことは、次のように表せます(定理 4.16(線型結合))。

    ba1,,an \begin{align*} \bm{b} \in \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle \end{align*}

  • すなわち、Ax=bA \bm{x} = \bm{b} が解を持つことは、b\bm{b}a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} が生成する部分空間の元であることと同値であるといえます。

  • またこれは、a1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} が生成する部分空間と、これに b\bm{b} を加えた a1,,an,b\bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} が生成する部分空間が等しいことと同値です。

    a1,,an=a1,,an,b \begin{align*} \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle = \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \end{align*}

(2)定理 4.35(部分空間の次元)の適用

  • いま、a1,,an\langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \ranglea1,,an,b\langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle の部分空間であるので、定理 4.35(部分空間の次元)より、次が成り立ちます。

    a1,,an=a1,,an,bdima1,,an=dima1,,an,b \begin{gather*} & \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle = \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \\ \Leftrightarrow & \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle = \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \\ \end{gather*}

  • 定理 4.30(線型独立なベクトルと次元)より、dima1,,an\dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \ranglea1,,an\bm{a}_{1}, \cdots, \bm{a}_{n} のうち線型独立なベクトルの最大数に等しく、これは AA の階数に他なりません(階数の定義)。同様に、dima1,,an,b\dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle(A,b)(A, \bm{b}) の階数に等しくなります。

  • したがって、次が成り立ちます。

    dima1,,an=dima1,,an,brankA=rank(A,b) \begin{align*} \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n} \, \rangle &= \dim \, \langle \, \bm{a}_{1}, \cdots, \bm{a}_{n}, \bm{b} \, \rangle \\ \Leftrightarrow \qquad \text{rank} \, A &= \text{rank} \, (A, \bm{b}) \\ \end{align*}

  • 以上から、題意が示されました。


まとめ

  • 連立一次方程式 Ax=bA \bm{x} = \bm{b} が解を持つためには、AA の階数と (A,b)(A, \bm{b}) の階数が等しいことが必要にして十分である。
    rankA=rank(A,b) \begin{equation*} \text{rank} \, A = \text{rank} \, (A, \bm{b}) \end{equation*}

参考文献

[1] 齋藤正彦. 線型代数入門. 東京大学出版会. 1966.
[2] 永田雅宣 他. 理系のための線型代数の基礎. 紀伊國屋書店. 1986.
[3] 川久保勝夫. 線形代数学 [新装版]. 日本評論社. 2010.
[4] 松坂和夫. 線型代数入門 [新装版]. 岩波書店. 2018.
[5] 三宅敏恒. 線形代数学 初歩からジョルダン標準形へ. 培風館. 2008.
[6] S. Lang. Linear Algebra Third Edition. Springer. 1987.
[7] T. Miyake. Linear Algebra From the Beginnings to the Jordan Normal. Springer. 2022.
[8] 雪江明彦. 代数学 11 群論入門. 日本評論社. 2010.
[9] 雪江明彦. 代数学 22 環と体とガロア理論. 日本評論社. 2010.
[10] 桂利行. 代数学 I\text{I} 群と環. 東京大学出版会. 2004.
[11] 松坂和夫. 代数系入門. 岩波書店. 1976.
[12] 高木貞治. 代数学講義 [改訂新版]. 共立出版. 1965.
[13] S. Lang. Algebra Revised Third Edition. Springer. 2002.
[14] M. Artin. Algebra Second Edition. Pearson Education Limited. 2014.
[15] 青本和彦 他. 数学入門辞典. 岩波書店. 2005.


初版:2023-06-12   |   改訂:2025-07-09