nkhrlab~

140字超の記事

分数が出てこない行列の対角化問題の作問の手法

本記事の目的

次のような形の問題は,「行列の対角化問題」と呼ばれる問題である.本記事では,これを単に「対角化問題」と呼ぶ.

行列 Aに対し,次のような条件を満たす対角行列 Dと行列 Pの組を1つ求めよ.

 D = P^{-1}AP.

対角化問題は,行列やベクトルに関する他の問題 (行列の累乗A^n nの式として表す問題など) の解法の一部として重要な問題である.

また,問題設定によっては行列 P逆行列 P^{-1}を計算する必要もあり,机上で解く場合には分数の取り扱いが面倒な問題としても知られている.行列 Aの成分に計算量を減らす特別な配慮がなければ,計算は大変厄介なものとなるだろう.また,あまりにも煩雑な計算を含む対角化問題は解答者の対角化の技能を確かめるのには不適切な場合もある.

そこで,本記事では対角化問題における行列 A, D, P, P^{-1}のすべての成分が整数となるように設定する作問の手法について記述する.

方法

 n次正方行列の対角化問題を考える.

 n単位行列 Iに好きな回数の行基本変形を行い, Pを設定する.ただし,行基本変形のうち,「ある行を c倍する」変形については, c = \pm 1に限る.また,「第 i行に第 j行の c倍を加える」変形については, cは整数の形に限る.

このようにしてできた Pの各成分は整数である.また, P^{-1}は存在し,その各成分もまた整数となる.

 Pの第 k\;\;(1 \leq k \leq n)列を列ベクトル \mathbf{v_k}として,
 P = \begin{bmatrix} \mathbf{v_1} & \mathbf{v_2} & \dots &  \mathbf{v_n}\end{bmatrix}
と表す. \mathbf{v_k} A k番目の固有ベクトルである. \mathbf{v_k}に対応する固有値 \lambda_kを設定する. \lambda_kは整数であればどのように設定してもよい. \lambda_kを整数とすることで, D = \begin{bmatrix} \lambda_1 & & & \\ & \lambda_2 & & \\ & & \ddots & \\ & & & \lambda_n \end{bmatrix}の各成分は整数となる.

 A = \begin{bmatrix} \lambda_1\mathbf{v_1} & \lambda_2\mathbf{v_2} & \dots & \lambda_n\mathbf{v_n} \end{bmatrix}P^{-1}とする.すべての固有値 \lambda_k固有ベクトル \mathbf{v_k}の各成分,行列 P^{-1}の各成分が整数だから, Aの各成分もまた整数となる.

こうして,行列 A, D, P, P^{-1}のすべての成分が整数となるような対角化問題の作問ができた.

問題例

 n = 3とする.

 3次の単位行列 Iの第 2行に第 3行の 2倍を加えると, \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 2 \\ 0 & 0 & 1 \end{bmatrix}となる.次に,第 1行に第 2行の 2倍を加えると, \begin{bmatrix} 1 & 2 & 4 \\ 0 & 1 & 2 \\ 0 & 0 & 1 \end{bmatrix}となる.さらに,第 2行を -1倍すると, \begin{bmatrix} 1 & 2 & 4 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \end{bmatrix}となる. P = \begin{bmatrix} 1 & 2 & 4 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \end{bmatrix}と設定する.また, P^{=1} = \begin{bmatrix} 1 & 2 & 0 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \end{bmatrix}となる.

 A固有ベクトル \mathbf{v_1} = \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix}, \mathbf{v_2} = \begin{bmatrix} 2 \\ -1 \\ 0 \end{bmatrix}, \mathbf{v_3} = \begin{bmatrix} 4 \\ -2 \\ 1 \end{bmatrix} と設定されている.それぞれの固有ベクトルに対応する固有値を, \lambda_1 = -2, \lambda_2 = 2, \lambda_3 = 3と設定する. D = \begin{bmatrix} -2 & 0 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 3 \end{bmatrix}となる.

行列 Aは次のように各成分が整数となる.
 \begin{eqnarray} A &=& \begin{bmatrix} \lambda_1\mathbf{v_1} & \lambda_2\mathbf{v_2} & \lambda_3\mathbf{v_3} \end{bmatrix}P^{-1} \\ &=& \begin{bmatrix} -2 & 4 & 12 \\ 0 & -2 & -6 \\ 0 & 0 & 3 \end{bmatrix} \begin{bmatrix} 1 & 2 & 0 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \end{bmatrix}  \\ &=& \begin{bmatrix} -2 & -8 & 4 \\ 0 & 2 & -2 \\ 0 & 0 & 3 \end{bmatrix}. \end{eqnarray}

こうして,行列 D, P, P^{-1}の各成分が整数となるような D, Pの組み合わせが存在する次のような問題ができた.

行列 A = \begin{bmatrix} -2 & -8 & 4 \\ 0 & 2 & -2 \\ 0 & 0 & 3 \end{bmatrix}に対し,次のような条件を満たす対角行列 Dと行列 Pの組を1つ求めよ.

 D = P^{-1}AP.