列空間

数学の線型代数学の分野において、ある行列 A の列空間（れつくうかん、英: column space）C(A)（しばしば、行列の値域（range）とも呼ばれる） とは、その行列の列ベクトルの線型結合としてあり得るすべてのものからなる集合のことを言う。 K を（実数あるいは複素数全体のような）体とする。K の成分からなる、ある m × n 行列の列空間は、m-空間 Km の線型部分空間である。列空間の次元は、その行列の階数と呼ばれる。（整数全体のような）環 K についての行列に対しても、同様に列空間を定義することが出来る。 ある行列の列空間は、対応する線型写像の像あるいは値域である。 K をスカラー体とする。A を、列ベクトル v1, v2, ..., vn を伴う m × n 行列とする。それら列ベクトルの線型結合とは、次の形式で記述される任意のベクトルのことを言う： c 1 v 1 + c 2 v 2 + ⋯ + c n v n , {\displaystyle c_{1}\mathbf {v} _{1}+c_{2}\mathbf {v} _{2}+\cdots +c_{n}\mathbf {v} _{n},} ここで c1, c2, ..., cn はスカラーである。v1, ... ,vn の線型結合としてあり得るすべてのベクトルからなる集合のことを、A の列空間と言う。すなわち、A の列空間は、ベクトル v1, ... , vn の張る部分空間である。 行列 A の列ベクトルの任意の線型結合は、A と列ベクトルの積として記述される。すなわち A [ c 1 ⋮ c n ] = [ a 11 ⋯ a 1 n ⋮ ⋱ ⋮ a n 1 ⋯ a n n ] [ c 1 ⋮ c n ] = [ c 1 a 11 + ⋯ + c n a 1 n ⋮ ⋮ ⋮ c 1 a n 1 + ⋯ + c n a n n ] = c 1 [ a 11 ⋮ a n 1 ] + ⋯ + c n [ a n 1 ⋮ a n n ] = = c 1 v 1 + ⋯ + c n v n {\displaystyle {\begin{array}{rcl}A{\begin{bmatrix}c_{1}\\\vdots \\c_{n}\end{bmatrix}}&=&{\begin{bmatrix}a_{11}&\cdots &a_{1n}\\\vdots &\ddots &\vdots \\a_{n1}&\cdots &a_{nn}\end{bmatrix}}{\begin{bmatrix}c_{1}\\\vdots \\c_{n}\end{bmatrix}}={\begin{bmatrix}c_{1}a_{11}+&\cdots &+c_{n}a_{1n}\\\vdots &\vdots &\vdots \\c_{1}a_{n1}+&\cdots &+c_{n}a_{nn}\end{bmatrix}}=c_{1}{\begin{bmatrix}a_{11}\\\vdots \\a_{n1}\end{bmatrix}}+\cdots +c_{n}{\begin{bmatrix}a_{n1}\\\vdots \\a_{nn}\end{bmatrix}}=\\{}&=&c_{1}\mathbf {v} _{1}+\cdots +c_{n}\mathbf {v} _{n}\end{array}}} として記述される。したがって A の列空間は、x ∈ Rn に対するすべてのあり得る積 Ax からなる。これは、対応する線型写像の像（あるいは、値域）と同様である。 例 A = [ 1 0 0 1 2 0 ] {\displaystyle A={\begin{bmatrix}1&0\\0&1\\2&0\end{bmatrix}}} とすると、その列ベクトルは v1 = (1, 0, 2)T と v2 = (0, 1, 0)T である。 v1 と v2 の線型結合は、次の形式で記述される任意のベクトルである： c 1 [ 1 0 2 ] + c 2 [ 0 1 0 ] = [ c 1 c 2 2 c 1 ] {\displaystyle c_{1}{\begin{bmatrix}1\\0\\2\end{bmatrix}}+c_{2}{\begin{bmatrix}0\\1\\0\end{bmatrix}}={\begin{bmatrix}c_{1}\\c_{2}\\2c_{1}\end{bmatrix}}\,} そのようなベクトルすべてからなる集合が、A の列空間である。この場合の列空間は、方程式 z = 2x を満たすようなベクトル (x, y, z) ∈ R3 の集合である（デカルト座標を用いることで、この集合は三次元空間における原点を通る平面であることが分かる）。 A の列ベクトルは列空間を張るが、それらが線型独立でない場合には基底を形成しないこともあり得る。幸運なことに、行列の基本変形は列ベクトルの間の依存関係に影響を与えない。このことは、列空間の基底を見つけるためにガウスの消去法を使用することを可能にする。 例えば、行列 A = [ 1 3 1 4 2 7 3 9 1 5 3 1 1 2 0 8 ]   {\displaystyle A={\begin{bmatrix}1&3&1&4\\2&7&3&9\\1&5&3&1\\1&2&0&8\end{bmatrix}}{\text{ }}} を考える。この行列の列ベクトルは、列空間を張るが、線型独立でない可能性もあり、その場合にはそれら列ベクトルの集合のある部分集合が、基底を形成する。この基底を見つけるために、A を行既約階段形へと書き下す： [ 1 3 1 4 2 7 3 9 1 5 3 1 1 2 0 8 ] ∼ [ 1 3 1 4 0 1 1 1 0 2 2 − 3 0 − 1 − 1 4 ] ∼ [ 1 0 − 2 1 0 1 1 1 0 0 0 − 5 0 0 0 5 ] ∼ [ 1 0 − 2 0 0 1 1 0 0 0 0 1 0 0 0 0 ]   {\displaystyle {\begin{bmatrix}1&3&1&4\\2&7&3&9\\1&5&3&1\\1&2&0&8\end{bmatrix}}\sim {\begin{bmatrix}1&3&1&4\\0&1&1&1\\0&2&2&-3\\0&-1&-1&4\end{bmatrix}}\sim {\begin{bmatrix}1&0&-2&1\\0&1&1&1\\0&0&0&-5\\0&0&0&5\end{bmatrix}}\sim {\begin{bmatrix}1&0&-2&0\\0&1&1&0\\0&0&0&1\\0&0&0&0\end{bmatrix}}{\text{ }}} この時点で、第一、第二、第四の列ベクトルは線型独立であることが明白になるが、第三の列ベクトルははじめの二つの列ベクトルの線形結合となっている（具体的に、v3 = −2v1 + v2 である）。したがって、もとの行列の第一、第二および第四の列ベクトル [ 1 2 1 1 ] , [ 3 7 5 2 ] , [ 4 9 1 8 ] {\displaystyle {\begin{bmatrix}1\\2\\1\\1\end{bmatrix}},{\begin{bmatrix}3\\7\\5\\2\end{bmatrix}},{\begin{bmatrix}4\\9\\1\\8\end{bmatrix}}} が、その行列の列空間の基底である。ここで、行既約階段形の独立な列ベクトルは、ピボット（英語版）を伴う列ベクトルであることに注意されたい。このことから、階段形へと書き下すことのみで、どの列ベクトルが線型独立であるか決定することが可能となる。 上述の計算法は一般的に、任意のベクトルの集合の間の依存関係を調べるため、および任意の張られる集合から基底を見つけるために用いられる。張られる集合から基底を見つけるための異なる計算方法は、記事「行空間」で述べられている：すなわち、A の列空間の基底を見つけることは、転置行列 AT の行空間の基底を見つけることと同値なのである。 列空間の次元は、その行列の階数と呼ばれる。階数は、行既約階段形におけるピボットの数と等しく、その行列から選ぶことの出来る線型独立な列の最大数である。例えば、上の例の 4 × 4 列の階数は 3 である。 列空間は、対応する行列変換の像であるため、行列の階数はその像の次元と等しい。例えば、上の例の行列として表現される変換 R4 → R4 は、R4 に属するすべての元を、ある4次元部分空間へと写す。 行列の退化次数（nullity）とは、零空間の次元のことを言い、行既約階段形においてピボットを持たない列の数に等しい。n 個の列を含む行列 A の階数と退化次数には、次の方程式で与えられる関係がある： rank ( A ) + nullity ( A ) = n . {\displaystyle {\text{rank}}(A)+{\text{nullity}}(A)=n.\,} この方程式は階数・退化次数の定理として知られる。 A の左零空間とは、xTA = 0T を満たすような全てのベクトル x の集合のことを言う。A の転置行列の零空間に等しい。行列 AT とベクトル x の積は、ベクトルのドット積を用いて次のように記述することが出来る： A T x = [ v 1 ⋅ x ⋮ v n ⋅ x ] {\displaystyle A^{T}\mathbf {x} ={\begin{bmatrix}\mathbf {v} _{1}\cdot \mathbf {x} \\\vdots \\\mathbf {v} _{n}\cdot \mathbf {x} \end{bmatrix}}} これはなぜかと言うと、AT の行ベクトルは A の列ベクトル vk の転置だからである。したがって、ATx = 0 が成立することと、x が A の各列ベクトルに直交することは、同値である。 左零空間（AT の零空間）は、A の列空間の直交補空間である。 行列 A に対し、列空間、行空間、零空間および左零空間は、しばしば四つの基本部分空間と呼ばれる。 上述の議論と同様に、列空間（しばしば「右」列空間と区別される）は環 K 上の行列に対して次のように定義される： ∑ k = 1 n v k c k {\displaystyle \sum \limits _{k=1}^{n}\mathbf {v} _{k}c_{k}} ここで c1, ..., cn は任意で、「右自由加群」への m-次元ベクトルを置き換えが行われている。したがって、通常とは異なる順番「ベクトル → スカラー」となるようにベクトルのスカラー倍が書き換えられている。 ユークリッド部分空間 零空間 行空間 四つの基本部分空間 行列の階数 線型包 行列 [脚注の使い方] ^ この記事でも述べられているように、線型代数学はとてもよく発展された数学の分野で、多くの参考文献が存在する。この記事で述べられているほとんど全ての内容は、Lay 2005、Meyer 2001 および Strang 2005 に見られる。 ^ この計算ではガウス＝ジョルダン法を用いている。ここで示されている各計算段階では、複数の行基本変形が行われている。 ^ ピボットを持たない列は、対応する同次線型方程式系における自由変数を表している。 ^ これは、K が可換でない時にのみ重要となる。実際、この形式は単に行列 A を Kn に属する列ベクトル c に掛けた積 Ac であり、Kn においては上の式とは異なり積の順序が「保存される」のである。 Strang, Gilbert (July 19, 2005), Linear Algebra and Its Applications (4th ed.), Brooks Cole, ISBN 978-0-03-010567-8  Axler, Sheldon Jay (1997), Linear Algebra Done Right (2nd ed.), Springer-Verlag, ISBN 0-387-98259-0  Lay, David C. (August 22, 2005), Linear Algebra and Its Applications (3rd ed.), Addison Wesley, ISBN 978-0-321-28713-7  Meyer, Carl D. (February 15, 2001), Matrix Analysis and Applied Linear Algebra, Society for Industrial and Applied Mathematics (SIAM), ISBN 978-0-89871-454-8, オリジナルの2009年10月31日時点におけるアーカイブ。, https://web.archive.org/web/20091031193126/http://matrixanalysis.com/DownloadChapters.html  Poole, David (2006), Linear Algebra: A Modern Introduction (2nd ed.), Brooks/Cole, ISBN 0-534-99845-3  Anton, Howard (2005), Elementary Linear Algebra (Applications Version) (9th ed.), Wiley International  Leon, Steven J. (2006), Linear Algebra With Applications (7th ed.), Pearson Prentice Hall  Khan Academy video tutorial Weisstein, Eric W. "Column Space". mathworld.wolfram.com (英語). Gilbert Strang, MIT Linear Algebra Lecture on the Four Fundamental Subspaces at Google Video, from MIT OpenCourseWare