Theorem
\(A_1,\cdots,A_r\)を\(n\times n\)の複素正方行列で、任意の\(i,j=1,\cdots,r\)に対して\(A_iA_j=A_jA_i\)が成り立つとする。このとき、ある\(P\in GL_n(\mathbb{C})\)が存在して、任意の\(i=1,\cdots,r\)に対して\(P^{-1}AP\)が上三角行列となることを示せ。
Proof
NaN任意の\(i,j=1,\cdots,r\)に対して\(A_iA_j=A_jA_i\)が成り立つので、環準同型\begin{align*}\varphi: \mathbb{C}[t_1,\cdots,t_r] &\to \mathrm{End}(\mathbb{C}^n), \\t_i &\mapsto A_i\end{align*}が存在する。この環準同型によって\(\mathbb{C}^n\)を\(\mathbb{C}[t_1,\cdots,t_r]\)-加群とみなしたものを\(V\)と置く。\(V\)は長さ有限であるから、\(\mathrm{Supp}(V)\subset \mathrm{Spec}(\mathbb{C}[t_1,\cdots,t_r])\)は有限個の閉点からなる離散閉部分集合である。従って、\[\mathrm{Supp}(V) = \{\mathfrak{m}_1,\cdots,\mathfrak{m}_l\}\]と置き、\(\mathfrak{m}_i\)での局所化を\(V_i :\overset{\small \mathrm{def}}{=} V_{\mathfrak{m}_i}\)と置けば、\(\mathbb{C}[t_1,\cdots,t_r]\)-加群として\(V\cong \bigoplus_{i=1}^l V_i\)が成り立つ。この同型は\(\mathbb{C}[t_1,\cdots,t_r]\)-加群の同型であるから、\(A_j(V_i)\subset V_i\)である。各\(A_j\)をこの直和分解のもとで行列表示すると、\[A_j \cdot\begin{pmatrix}0\in V_1 \\ \vdots \\ 0\in V_{i-1} \\ *\in V_i \\ 0\in V_{i+1} \\\vdots \\ 0\in V_l\end{pmatrix}=\begin{pmatrix}0\in V_1 \\ \vdots \\ 0\in V_{i-1} \\ *\in V_i \\ 0\in V_{i+1} \\\vdots \\ 0\in V_l\end{pmatrix}\]なので、\[A_j =\begin{pmatrix}A_{j1} & 0 & 0 & \cdots & 0 \\0 & A_{j2} & 0 & \cdots & 0 \\0 & 0 & A_{j3} & & 0 \\\vdots & \vdots & & \ddots & \vdots \\0 & 0 & \cdots & \cdots & A_{jl}\end{pmatrix}\]となる。従って、同時三角化の存在を示すためには、\(A_j|_{V_i}:V_i\to V_i\)の行列表示が上三角となるような\(V_i\)の基底の存在を証明することが十分である。次に、\(\mathfrak{m}_i^sV_i = 0\)となる\(s\geq 0\)をとる。このとき、\(\mathbb{C}\)-線形空間として\[V_i \cong \bigoplus_{k=0}^{s-1} \mathfrak{m}_i^kV_i/\mathfrak{m}_i^{k+1}V_i\]が成り立つ。Hilbertの零点定理より\(\mathfrak{m}_i = (t_1-a_1,\cdots,t_r-a_r)\)となる\(a_1,\cdots,a_r\in \mathbb{C}\)が存在する。\(E\)を単位行列とすると、\(\varphi(t_j-a_j) = A_j-a_jE\)であり、また\(t_j-a_j\in \mathfrak{m}_i\)であるから、この同型によって\(V_i\)を右辺と同一視すると、\[(A_j - a_jE)(\mathfrak{m}_i^{k_0}V_i/\mathfrak{m}_i^{k_0+1}V_i)\subset \bigoplus_{k=k_0}^s \mathfrak{m}_i^kV_i/\mathfrak{m}_i^{k+1}V_i\]が成り立つ。すなわち、\[(A_j-a_jE) \cdot\begin{pmatrix}*\in \mathfrak{m}_i^{s-1}V_i/\mathfrak{m}_i^sV_i \\ \vdots \\ *\in \mathfrak{m}_i^{k+1}V_i/\mathfrak{m}_i^{k+2}V_i \\ *\in \mathfrak{m}_i^kV_i/\mathfrak{m}_i^{k+1}V_i \\ 0\in \mathfrak{m}_i^{k-1}V_i/\mathfrak{m}_i^kV_i \\\vdots \\ 0\in \mathfrak{m}_i^1V_i/\mathfrak{m}_i^2V_i \\0\in \mathfrak{m}_i^0V_i/\mathfrak{m}_i^1V_i\end{pmatrix}=\begin{pmatrix}*\in \mathfrak{m}_i^{s-1}V_i/\mathfrak{m}_i^sV_i \\ \vdots \\ *\in \mathfrak{m}_i^{k+1}V_i/\mathfrak{m}_i^{k+2}V_i \\0\in \mathfrak{m}_i^kV_i/\mathfrak{m}_i^{k+1}V_i \\0\in \mathfrak{m}_i^{k-1}V_i/\mathfrak{m}_i^{k}V_i \\\vdots \\ 0\in \mathfrak{m}_i^1V_i/\mathfrak{m}_i^2V_i \\0\in \mathfrak{m}_i^0V_i/\mathfrak{m}_i^1V_i\end{pmatrix}\]が成り立つ。よって、\(A_j-a_jE\)の行列表示は\[A_j-a_jE =\begin{pmatrix}0 & * & * & \cdots & * \\0 & 0 & * & \cdots & * \\\vdots & & \ddots & & \vdots \\0 & 0 & \cdots & 0 & * \\0 & 0 & \cdots & 0 & 0\end{pmatrix}\]となる。\(a_jE\)は対角行列なので、以上で\(A_j\)の行列表示が上三角行列となるような基底の存在が示された。