Jordan 블록과 Jordan 표준형

by Ariel Daley

Jordan 블록

행렬이 대각화 가능하지 않을 때, 그 대안으로 Jordan 표준형(Jordan normal form)이 등장한다. 이는 행렬을 대각행렬에 ‘가장 근접한’ 형태로 만들어 주는 일반적 방법이다. 그 핵심 구성요소가 Jordan 블록(Jordan block)이다. Jordan 블록은 “중복도가 2 이상인 고윳값을 갖지만, 고유벡터가 생성하는 공간이 충분히 크지 않은” 상황을 처리하기 위한 특별한 상삼각행렬로 이해할 수 있다.

대각화가 안 될 때 나타나는 문제

행렬 \(A\)가 대각화되려면, 각 고윳값의 기하적 중복도(고유공간 차원)가 그 대수적 중복도와 같아야 한다. 그러나 만약 기하적 중복도가 부족하면 — 즉, 대수적 중복도가 2 이상인 고윳값을 따르는 일차독립인 고유벡터의 수가 충분하지 않다면 — ‘모든 열을 고유벡터만으로 구성’하는 기저를 만들 수 없다.

이때 Jordan 표준형은, “고유벡터만으로는 기저가 안 되지만” 각 고윳값에 대해 특정한 보조 벡터(Generalized eigenvector)를 추가하여, 행렬이 갖는 특성을 가장 단순한 형태로 나타내려는 시도다. 그리고 그것이 바로 Jordan 블록을 통해 체계적으로 실현된다.

정의 1. (Jordan 블록)

\(A\)가 \(n\times n\) 정사각행렬이고, \(\lambda\)가 \(A\)의 한 고윳값이며, \(m\)이 \(1\le m\le n\)인 정수라고 하자. 이때 다음과 같은 \(m \times m\) 상삼각행렬을 Jordan 블록이라고 부른다. \[ J_m(\lambda) = \begin{pmatrix} \lambda & 1 & 0 & \cdots & 0 \\ 0 & \lambda & 1 & \cdots & 0 \\ 0 & 0 & \lambda & \ddots & 0 \\ \vdots & \vdots & \ddots & \ddots & 1 \\ 0 & 0 & \cdots & 0 & \lambda \end{pmatrix}. \]

  • 대각선 위에는 모두 \(\lambda\)가 들어 있고, 바로 윗대각선에만 1이 들어 있다. 다른 성분은 모두 0이다.
  • \(m=1\)인 경우, \(\begin{pmatrix}\lambda\end{pmatrix}\)가 그냥 스칼라(1×1)로서 하나의 Jordan 블록이 된다.

Jordan 블록은 대각화에 실패했을 때(“대수적 중복도는 크지만 기하적 중복도는 작을 때”) 필요한 대각선 위쪽 성분(1)을 허용함으로써, 행렬이 표현할 수 있는 구조를 상삼각 형태로 묘사하기 위한 장치다.

Jordan 블록의 성질
  • 특성다항식: \(\det(J_m(\lambda) - xI) = (\lambda - x)^m\)이므로, 고윳값은 \(\lambda\) 하나뿐이고, 이 고윳값의 대수적 중복도는 \(m\)이다.
  • 거의 대각행렬: \(\lambda\)가 대각선에 있고, 1이 바로 윗대각선에 있을 뿐이므로, 실제로 “완벽하게 대각화되지 못한” 상황을 표현한다. \(m=1\)이면 완전 대각화되는 케이스, \(m>1\)이면 고유공간이 충분히 크지 않아 반쯤만 대각화된 상태로 볼 수 있다.
  • 고윳값 \(\lambda\)만 갖는다: Jordan 블록 \(J_m(\lambda)\)는 오로지 \(\lambda\) 하나가 고윳값이다. 기하적 중복도(고유공간 차원)는 1이지만, 대수적 중복도가 \(m\)인 상황을 완벽히 보여 준다.

이를테면, 예시로 \[ J_3(\lambda) = \begin{pmatrix} \lambda & 1 & 0 \\ 0 & \lambda & 1 \\ 0 & 0 & \lambda \end{pmatrix} \] 를 보면, 이 행렬의 특성방정식은 \(\lambda\)를 3중 근으로 가지되, 실제 \(\lambda\)에 대응되는 고유공간의 차원은 1에 불과하다. 이런 행렬은 대각화가 불가능하지만, Jordan 표준형에서는 이 형태가 핵심 블록이 된다.

Jordan 블록이 나타나는 이유

대수적으로 중복된 고윳값이 있을 때, 실제로 확보되는 고유벡터(기하적 중복도)가 1이나 2, ... 이런 식으로 제한되는 경우를 일반화하면, “임의의 Jordan 블록”이 형성된다. Jordan 블록은 그 중복된 고윳값에 대응해 “일련의 벡터들(일반화된 고유벡터)”이 체계적으로 연결된 상삼각 구조를 만들어 내는 것인데, 이는 곧 Jordan 표준형 전체가 여러 개의 Jordan 블록을 대각선 방향으로 배치해서 만들어지는 이유이기도 하다.

결국, Jordan 블록은 “중복 고윳값 + 부족한 기하적 중복도”를 반영하는 최소한의 대각블록 요소로써, \(\lambda\)가 반복되는 데 따른 추가 구조를 표현한다고 볼 수 있다. 이 블록들을 조합하면 행렬 전반의 구조를 최대한 단순화한 형태가 얻어지며, 그것이 Jordan 표준형의 유용성이라 할 수 있다.

Jordan 표준형

Jordan 표준형(Jordan Normal Form) 존재 정리는 복소수 범위에서 정의된 정사각행렬에 대해 “어떤 행렬이라도 (적절한 기저 변환을 통해) Jordan 표준형으로 나타낼 수 있다”는 강력한 결과를 말한다. 다만, 이 정리는 고윳값이 모두 복소수 범위에서 존재한다는 사실—즉, 모든 차수의 다항식이 \(\mathbb{C}\)에서 근을 갖는다는 기본 성질(대수학의 기본정리)에 의존한다. 이 섹션에서는 Jordan 표준형 존재 정리의 핵심 아이디어와 의의를 살펴본다.

복소수 범위에서의 완전성

실수 행렬이라도, 복소수 범위에서 생각하면 모든 행렬이 적어도 하나 이상의 복소 고윳값을 갖는다(대수학의 기본정리). 게다가, 대수적 중복도가 2 이상인 고윳값이라도, 기하적 중복도가 불충분할 때 생기는 문제를 “Jordan 블록”을 통해 해결할 수 있다.

  • 특성다항식 \(\det(A - \lambda I)=0\)의 해 \(\lambda\)를 모두 \(\mathbb{C}\)에서 구할 수 있다. \(\lambda\)가 중복근이라면, 고윳값이 여러 번 나타난다는 뜻이다.
  • 고유공간 + 일반화 고유공간 기하적 중복도가 부족하면, ‘일반화된 고유벡터(generalized eigenvector)’라는 보조 벡터 개념을 추가해서, Jordan 블록을 형성한다.

이 과정을 거치면, 어떤 행렬이든 “블록 대각 형태”의 상삼각행렬을 만들 수 있는데, 그 대각블록이 전부 “Jordan 블록”으로 구성된다. 결과적으로 이 상삼각행렬이 곧 Jordan 표준형이다.

정리 1. (Jordan 표준형 존재 정리)

복소수체 \(\mathbb{C}\) 위의 \(n\times n\) 행렬 \(A\)에 대해서, 적당한 가역행렬 \(P\in \mathrm{GL}_n(\mathbb{C})\)가 존재하여, \[ P^{-1} A\, P = J \] 가 성립한다. 여기서 \(J\)는 Jordan 표준형이라 불리는 상삼각 블록 행렬로, \[ J = \begin{pmatrix} J_1 (\lambda_1 ) & O & O & \cdots & O \\ O & J_2 (\lambda_2 ) & O & \cdots & O \\ O & O & J_2 (\lambda_2 ) & \cdots & O \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ O & O & O & \cdots & J_m (\lambda _m) \\ \end{pmatrix} \] 의 형태이다. 각 블록은 고윳값 \(\lambda_i\)의 Jordan 블록 \[ J_i (\lambda _i ) = \begin{pmatrix} \lambda_i & 1 & 0 & \dots & 0 \\ 0 & \lambda_i & 1 & \dots & 0 \\ 0 & 0 & \lambda_i & \ddots & 0 \\ \vdots & \vdots & \ddots & \ddots & 1 \\ 0 & 0 & \cdots & 0 & \lambda_i \end{pmatrix} \] 이며, \(O\)는 적당한 크기의 영행렬이다.

직관적으로는, “행렬 \(A\)”가 갖는 모든 고윳값(중복 포함)과 해당 고유공간의 구조(또는 일반화 고유공간) 정보를 반영하여, 가장 간단한 형태로 만들어내는 것이 Jordan 표준형이다. 대각화는 특수케이스(모든 Jordan 블록이 \((1\times1)\)짜리 대각형)이고, 보편적으로는 블록 크기가 2이상인 것들이 나타날 수 있다.

Jordan 표준형의 유일성(블록 분해)

Jordan 표준형을 구성하는 “블록”들의 배치는 정해진 순서(예: 대각 원소의 크기 순)와 중복도에 의존하며, 고윳값마다 관련된 Jordan 블록들이 어떻게 나뉘는지에 따라 달라진다. 이때 ‘Jordan 표준형은 동치(유사) 관계에서 유일하다’는 성질이 중요한데, “중복도와 블록의 크기 분할”을 변경하지 않는 한, 같은 Jordan 형태를 나타내기 때문에, 행렬의 Jordan 표준형은 본질적으로 유일하다.

  • \(\lambda\)가 대수적 중복도 \(k\)일 때, 그 \(\lambda\)에 대한 Jordan 블록들의 크기 합이 \(k\)를 이룬다.
  • 각 블록의 기하적 의미는 “연속된 일반화 고유벡터 사슬(chain)” 하나를 표현한다.

이런 식으로, Jordan 표준형은 행렬이 가진 모든 선형대수적 특성을 압축적으로 표현하는 최종 양식이 되며, 고윳값·중복도·기하적 구조 모두를 한 번에 보여 준다.

보기 1.

행렬 \[ M = \begin{pmatrix} 3 & 1 & 0 \\ 0 & 3 & 0 \\ 0 & 0 & 3 \end{pmatrix} \] 에 대한 조르당 표준형을 구해 보자. 우선, 모든 대각원소가 3이므로 고윳값은 3이 중복도 3으로 나타난다. 행렬이 상삼각행렬이므로, \(\det(M - 3I) \neq 0\)가 아닌 이상, 이 고윳값 하나만 존재한다는 사실은 분명하다.

이제 고유공간의 차원(기하적 중복도)와, 일반화 고유공간 구조(조르당 블록의 크기)를 살펴야 한다. 우선, \[ M - 3I = \begin{pmatrix} 0 & 1 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix} \] 을 살펴보면, 이 행렬의 랭크(rank)는 1이므로, \[ \dim\mathrm{Ker}(M - 3I) = 3 - 1 = 2. \] 따라서 기하적 중복도(고유공간 차원)는 2이다. 즉, 고윳값 3에 대해 2개의 일차독립 고유벡터가 존재한다.

다음으로 \((M - 3I)^2\)를 계산한다. \[ (M - 3I)^2 = \begin{pmatrix} 0 & 1 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix}^2 = \begin{pmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix}. \] 이는 영행렬이 되므로, \(\dim \mathrm{Ker}((M-3I)^2) = 3\)이다. 즉, \((M-3I)^2=0\)이 전체 공간을 영벡터로 보내므로, 전체 공간이 일반화 고유공간(차수 2 이하)으로 덮인다는 뜻이다.

기하적 중복도는 2이지만, 전체 차원이 3이므로 고유벡터만으로는 3차원의 기저를 이루기 충분하지 않다(2개의 고유벡터밖에 없기 때문). 그 대신 ‘일반화 고유벡터’를 추가로 하나 더 잡아야 한다. 이때 형성되는 조르당 블록 구조는 다음과 같다.

  • 크기 2의 블록 \(J_2(3)\)이 하나 (길이 2 사슬),
  • 크기 1의 블록 \(J_1(3)\)이 하나 (길이 1 사슬).

결과적으로, 행렬 \(\displaystyle M\)의 조르당 표준형(Jordan Normal Form)은 \[ \begin{pmatrix} 3 & 1 & 0 \\ 0 & 3 & 0 \\ 0 & 0 & 3 \end{pmatrix} \] 과 동일하다. 실제로 \(M\) 자체가 이미 조르당 형태를 띠고 있는 셈이다. 즉, 하나의 2×2 조르당 블록 \(J_2(3)\)와, 1×1 블록 \(J_1(3)\)로 분해되며, 이 두 블록을 대각으로 배치한 것이 \(M\) 자체이다.

정리하면, 이 행렬 \(M\)은 고윳값 3 하나를 중복도 3으로 가지며, 기하적 중복도는 2이므로 “길이가 2인 조르당 사슬 하나 + 길이가 1인 조르당 사슬 하나”가 형성된다. 따라서 조르당 표준형은 \[ \begin{pmatrix} 3 & 1 & 0 \\ 0 & 3 & 0 \\ 0 & 0 & 3 \end{pmatrix} \] 그대로이다.

얼핏 생각하면 행렬의 고윳값을 구하고, 고윳값의 대수적 중복도와 기하적 중복도만 알면 그 행렬의 조르당 표준형을 구할 수 있을 것 같이 느껴질 수도 있다. 그러나 그렇지 않다. 다음 예를 살펴보자.

보기 2.

고윳값이 하나만 존재하고, 그 대수적 중복도와 기하적 중복도가 주어졌을 때에도, 조르당 표준형이 유일하게 결정되지 않을 수 있다. 예를 들어, 다음 정보를 만족하는 \(5\times 5\) 행렬 \(A\)를 생각해 보자.

  • 유일한 고윳값: \(\lambda = 7\)
  • \(7\)의 대수적 중복도: \(5\)
  • \(7\)의 기하적 중복도: \(3\)

이는 “\(\lambda=7\)”이 \(A\)의 특성방정식의 5중근이지만, 독립인 고유벡터가 정확히 3개 존재한다는 뜻이다. 따라서 일반화 고유벡터를 더 보충하여, 총 5차원의 공간을 모두 커버해야 한다.

조르당 표준형에서, 길이가 합쳐서 5가 되는 조르당 블록들을 3개 만들어야 하므로, 가능한 분할은 다음과 같이 두 가지가 있다.

  • 분할 (3, 1, 1): 하나의 블록 \(J_3(7)\)과 두 개의 블록 \(J_1(7)\)
  • 분할 (2, 2, 1): 두 개의 블록 \(J_2(7)\)과 하나의 블록 \(J_1(7)\)

이 중 어느 구조가 실제 행렬 \(A\)의 조르당 표준형이 되는지는, 행렬이 갖는 일반화 고유공간의 세부 차원(예: \(\mathrm{Ker}((A-7I)^2)\), \(\mathrm{Ker}((A-7I)^3)\), 등)에 달려 있다. 즉, “고윳값 \(\lambda\)의 기하적 중복도가 \(3\)”라고 해서 모든 사슬 길이를 한 번에 결정할 수 있는 것은 아니며, 조르당 블록의 길이 배분은 추가 정보를 분석하여 확정해야 한다.

결과적으로, 단순히 “고윳값 \(7\)이 대수적 중복도 \(5\), 기하적 중복도 \(3\)이다”라는 정보만으로는 조르당 표준형이 정확히 어떤 모양인지가 하나로 결정되지 않는다. \((3,\,1,\,1)\) 형태일 수도 있고 \((2,\,2,\,1)\) 형태일 수도 있기 때문이다. 이는 “고윳값의 대수적 중복도와 기하적 중복도”에 대한 정보가 조르당 표준형을 부분적으로만 규정하고, 남은 블록의 길이 분배는 추가적 정보를 통해 보충되어야 함을 보여주는 대표적인 사례이다.