1. 개요[편집]
| 조르당 표준형 Jordan canonical form | |
|---|---|
| 형태 | $A = S J S^{-1}$, $J = \mathrm{diag}(J_{k_1}(\lambda_1), \dots, J_{k_p}(\lambda_p))$ |
| 블록 | 대각에 $\lambda$, 상부 부대각에 1 |
| 유일성 | 블록 순서를 제외하고 유일 |
| 수치 계산 | 사실상 불가능 (구조가 데이터에 대해 불연속) |
| 실무 대안 | 슈어 분해, 의사스펙트럼 |
선형대수 시험의 왕, 수치해석 코드의 유령.
조르당 표준형(Jordan canonical form, JCF)은 임의의 정사각 복소행렬 를 상사변환으로 도달할 수 있는 “가장 대각에 가까운” 형태다. 적당한 가역행렬 가 존재해 이고, 는 조르당 블록
들을 대각으로 늘어놓은 블록대각행렬이다. 블록의 나열 순서를 빼면 유일하게 결정되므로, 두 행렬이 상사인지 여부는 조르당 형이 같은지만 보면 된다 — 상사 관계의 완전 불변량이다.
블록 크기의 분포를 지배하는 것이 두 중복도의 차이다. 고유값 의 대수적 중복도는 특성다항식에서 가 나오는 차수, 즉 그 를 가진 블록들의 크기 합이다. 기하적 중복도는 , 즉 실제로 존재하는 고유벡터의 개수이며 이것이 정확히 블록의 개수다. 둘이 같으면 그 고유값의 블록은 전부 이고, 기하 < 대수이면 크기 2 이상의 블록이 생기며 그 행렬을 결함 행렬(defective matrix)이라 부른다. 결함의 정도가 곧 “대각화에서 얼마나 멀리 떨어져 있는가”다.
2. 블록 크기는 랭크가 결정한다[편집]
블록의 개수와 크기는 임의로 정해지는 것이 아니라 멱의 커널 차원으로 완전히 결정된다. 라 두면, 크기가 정확히 인 블록의 개수는
이다. 부터 시작해 증가폭이 멈출 때까지 계산하면( 는 대수적 중복도에서 포화한다) 블록 구조가 유일하게 복원된다. 이 증가폭 수열 을 바이어 특성(Weyr characteristic)이라 부르며, 블록 크기 수열의 켤레 분할에 해당한다 — 결국 조르당 구조를 분류하는 일은 정수 분할을 세는 조합론 문제다.
문제는 이 공식이 랭크를 정확히 알아야만 쓸 수 있다는 것이다. 부동소수점에서 는 “어디까지를 0으로 볼 것인가”라는 임계값 선택 문제이고, 그 선택이 한 칸만 달라져도 블록 구조가 통째로 바뀐다. 다음 절의 이야기가 여기서 시작된다.
3. 왜 수치계산에서는 못 쓰는가[편집]
이론적 완결성과는 별개로, 조르당 형은 부동소수점 위에서 계산할 수 없다. 이유는 반올림 오차가 크다거나 알고리즘이 미개해서가 아니라 구조 자체가 데이터에 대해 불연속이기 때문이다.
교과서적인 예가 하나면 충분하다. 의 성분에 을 넣으면
이므로 고유값이 로 갈라진다. — 배정밀도 반올림 한 번 수준의 섭동 — 이면 고유값이 로 이동한다. 입력 오차 대비 출력 오차가 배다. 일반적으로 조르당 블록은 규모로 흩어지므로, 블록이 클수록 상황은 더 험해진다.1 게다가 인 순간 은 서로 다른 두 고유값을 가지므로 대각화 가능이다. 결함 행렬의 집합은 측도 0이고, 임의의 섭동은 거의 확실하게 블록을 쪼개 버린다.
여기에 후진 오차 해석의 논리를 얹으면 결론이 나온다. 어떤 고유값 알고리즘이 후진 안정하다면 그 결과는 ” 근처 어떤 행렬의 정확한 답”인데, 근처의 행렬은 거의 전부 대각화 가능하다. 즉 후진 안정한 알고리즘은 원리적으로 조르당 구조를 복원할 수 없다. 설령 구조를 안다고 가정해도 상사변환 의 조건수 에 상한이 없어서, 를 명시적으로 만드는 순간 정보가 날아간다. 골룹과 윌킨슨이 1976년 SIAM Review 논문에서 정리한 것이 정확히 이 이야기이며, “조르당 형을 계산하겠다”는 요구는 그 뒤로 수치선형대수에서 잘못 던진 질문의 대표 사례가 되었다.2
그래서 실무는 다른 길로 간다. 슈어 분해는 유니터리 변환만 쓰므로 이고 모든 행렬에 대해 안정하게 계산된다. 고유값이 뭉쳐 있을 때는 개별 고유값 대신 불변 부분공간 전체를 다루고, 섭동에 대한 민감도는 의사스펙트럼으로 정량화한다. “이 행렬이 결함인가?”라는 이진 질문 대신 ” 을 얼마나 주면 고유값이 어디까지 퍼지는가?”라는 연속적 질문으로 바꾸는 것이다.
4. 그럼에도 이론에서 살아남는 이유[편집]
계산은 못 해도 조르당 형은 여전히 “왜 그런 일이 일어나는가”를 설명하는 언어다.
가장 중요한 것이 행렬 지수함수다. ( 은 멱영, )이므로
이고, 성분에는 꼴이 나타난다. 이면 결국 0으로 가지만, 그 전에 다항식 인자가 해를 위로 밀어 올린다. 이것이 결함 행렬의 과도 성장(transient growth)이며, 고유값이 전부 좌반평면에 있는데도 가 수백 배로 치솟는 비정규 행렬의 거동을 설명하는 첫 번째 모형이다.3 이 관점이 난류 천이의 아임계 시나리오나 강성 방정식의 초기 과도 구간을 읽는 기본 어휘가 된다.
같은 구조가 상수계수 선형 상미분방정식의 해 공식에도 그대로 나온다. 특성근이 중근이면 해 공간의 기저에 가 들어가는데, 이 들의 출처가 바로 조르당 블록의 멱영 부분이다. 임계 감쇠 진동계에서 가 튀어나오는 것도 같은 사연.
블록 크기 정보는 두 가지 대수적 불변량으로도 표현된다. 최소다항식은 각 고유값에 대해 가장 큰 블록 크기만큼의 지수를 갖는 이고(대각화 가능 최소다항식이 중근을 갖지 않음), 다항식환 위 가군 이론으로 가면 같은 정보가 불변인자와 초등인자, 즉 의 스미스 표준형으로 나타난다. 조르당 형이 복소수체에서만 온전한 데 반해 유리 표준형(프로베니우스 형)은 임의의 체에서 성립한다는 차이도 여기서 갈린다.4
5. 관련 문서[편집]
- 슈어 분해 · 고유값 문제 · 특이값 분해 · 행렬식
- 조건수 · 후진 오차 해석 · 부동소수점 연산
- 비정규 행렬 · 의사스펙트럼 · 난류 천이
- 행렬 지수함수 · 지수 적분기 · 강성 방정식
- 최소다항식 · 케일리-해밀턴 정리 · 거듭제곱법
6. Footnotes[편집]
-
크기 10짜리 블록에 을 주면 고유값이 반지름 짜리 원 위로 흩어진다. 배정밀도 16자리를 넣고 유효숫자 1.6자리를 받는 셈이다. 잔인하다. ↩
-
G. H. Golub, J. H. Wilkinson, “Ill-conditioned eigensystems and the computation of the Jordan canonical form,” SIAM Review 18 (1976). 제목에 이미 결론이 들어 있다. 이후 계단형(staircase) 알고리즘 같은 랭크 결정 기반 접근이 나왔지만, 전부 “어디까지를 0으로 볼 것인가”라는 임계값 선택에 답을 떠넘긴다. ↩
-
다만 순수한 조르당 논리만으로는 과도 성장의 크기를 못 잡는다. 결함이 전혀 없는(고유값이 전부 단순한) 행렬도 고유벡터가 서로 거의 평행하면 얼마든지 크게 증폭될 수 있기 때문이다. 조르당은 “정성적으로 왜”까지, “정량적으로 얼마나”는 의사스펙트럼과 크라이스 상수의 몫. ↩
-
카미유 조르당이 이 형태를 발표한 것은 1870년 Traité des substitutions 이고, 대상은 유한체 위 선형군이었다. 실해석의 조르당 곡선 정리와 조르당 측도도 같은 사람이다. 참고로 가우스 소거의 “가우스-조르당”에 붙는 조르당은 다른 사람(빌헬름 조르당, 측지학자)이다. ↩