Search
Duplicate

선형대수/ 대각화(diagonalization)

대각화(diagonalization)

유한차원 벡터공간 VV의 선형연산자 TT가 대각화가능하기 위한 필요충분조건은 의 고유벡터로 이루어진 의 순서기저 β\beta가 존재하는 것이다.
또한 TT가 대각화가능하면 β={v1,v2,...,vn}\beta = \{ \bold{v}_1, \bold{v}_2,...,\bold{v}_n \}TT의 고유벡터로 이루어진 순서기저이며 D=[T]β\bold{D} = [T]_\beta는 대각행렬이다. 이때 Djj(1jn)D_{jj}(1 \leq j \leq n)vj\bold{v}_j에 대응하는 고윳값이다.
행렬 AMn×n(F)\bold{A} \in M_{n \times n}(F)가 대각화가능하기 위한 필요충분조건은 A\bold{A}의 고유벡터로 이루어진 FnF^n의 순서기저가 존재하는 것이다.
또한 {v1,v2,...,vn}\{ \bold{v}_1, \bold{v}_2, ... , \bold{v}_n \}A\bold{A}의 고유벡터로 이루어진 FnF^n의 순서기저이고 jj열이 벡터 vj\bold{v}_jn×nn \times n 행렬 Q\bold{Q}에 대하여 D=Q1AQ\bold{D} = \bold{Q}^{-1}\bold{AQ}DjjD_{jj}vj\bold{v}_j에 대응하는 A\bold{A}의 고윳값인 대각행렬이다.
즉 행렬 A\bold{A}가 대각화가능하기 위한 필요충분 조건은 대각행렬과 닮음인 것이다.
벡터공간의 선형연산자 TTTT의 서로 다른 고윳값 λ1,λ2,...,λk\lambda_1, \lambda_2,...,\lambda_k를 생각하자. 각 i=1,2,..,ki = 1,2,..,k에 대하여 λi\lambda_i에 대응하는 TT의 고유벡터로 이루어진 유한집합을 SiS_i라 하자. 각 Si(i=1,2,...,k)S_i (i = 1, 2,...,k)가 선형독립이면 S1S2...SkS_1 \cup S_2 \cup ... \cup S_k도 선형독립이다.
nn차원 벡터공간의 선형연산자 TT가 서로 다른 nn개의 고윳값을 가지면 TT는 대각화가능하다.
그러나 이것의 역은 성립하지 않는다. TT가 대각화가능하다고 해서 반드시 서로 다른 nn개의 고윳값이 있다고 할 수 없다.
다음 조건을 만족하는 다항식 f(t)P(F)f(t) \in P(F)FF 위에서 완전히 인수분해 된다(split over FF)라고 한다. 이때 스칼라 A\bold{A} 중 같은 값이 있을 수 있다.
f(t)=c(ta1)(ta2)...(tan)f(t) = c(t-a_1)(t-a_2)...(t-a_n)
FF-벡터공간 VV의 대각화가능한 선형연산자의 특성다항식은 FF 위에서 완전히 인수분해 된다.
이것의 역은 거짓이다. TT의 특성다항식이 완전히 인수분해되어도 TT는 대각화불가능할 수 있다.
특성다항식이 f(t)f(t)인 선형연산자(또는 행렬)의 고윳값 λ\lambda에 대하여, (tλ)k(t - \lambda)^kf(t)f(t)의 인수가 되도록하는 가장 큰 자연수 kkλ\lambda의 중복도(multiplicity) 또는 대수적 중복도(algebraic multiplicity)라 한다.
벡터공간 VV의 선형연산자 TT와 고윳값 λ\lambda에 대하여, 다음 집합 EλE_\lambda를 고윳값 λ\lambda에 대응하는 TT의 고유공간(eigenspace)라 한다.
Eλ={xV:T(x)=λx}=N(TλIV)E_\lambda = \{ \bold{x} \in V : T(\bold{x}) = \lambda \bold{x} \} = N(T - \lambda \bold{I}_V)
이와 비슷하게 λ\lambda에 대응하는 LAL_\bold{A}의 고유공간을 λ\lambda에 대응하는 정사각행렬 A\bold{A}의 고유공간이라 한다.
유한차원 벡터공간 VV의 선형연산자 TT와 중복도가 mmTT의 고윳값 λ\lambda에 대하여 1dim(Eλ)m1 \leq \dim(E_\lambda) \leq m이다.
유한차원 벡터공간 VV의 선형연산자 TT에 대하여 TT의 특성다항식이 완전히 인수분해되고 λ1,λ2,...,λk\lambda_1, \lambda_2,...,\lambda_k가 서로 다른 TT의 고윳값일 때 다음이 성립한다.
1.
TT가 대각화가능하기 위한 필요충분조건은 모든 ii에 대하여 λi\lambda_i의 중복도가 dim(Eλi)\dim(E_{\lambda_i})와 같은 것이다.
2.
TT가 대각화가능하고 각각의 ii에 대하여 βi\beta_iEλiE_{\lambda_i}의 순서기저일 때, β=β1β2...βk\beta = \beta_1 \cup \beta_2 \cup ... \cup \beta_kTT의 고유벡터로 이루어진 VV의 순서기저이다.
nn차원 벡터공간 VV의 선형연산자 TT가 대각화 가능하기 위한 필요충분조건은 다음 두 조건이 모두 성립하는 것이다.
1.
TT의 특성다항식이 완전히 인수분해 된다.
2.
TT의 고윳값 λ\lambda의 중복도가 nullity(TλI)\text{nullity}(T - \lambda \bold{I})와 같다. 즉 λ\lambda의 중복도는 nrank(TλI)n - \text{rank}(T - \lambda \bold{I})이다.
유한차원 벡터공간 VV의 선형연산자 TT가 대각화가능하기 위한 필요충분조건은 VVTT의 고유공간의 직합인 것이다.
행렬 AMn×n(F)\bold{A} \in M_{n \times n}(F)가 서로 다른 nn개의 서로 다른 고윳값을 가지면 A\bold{A}는 대각화가능하다.
행렬 A\bold{A}의 고윳값과 이에 대응하는 단위벡터인 고유벡터를 각각 아래와 같이 정의하자.
λ1,λ2,...,λn,v1,v2,...,vn\lambda_1, \lambda_2, ..., \lambda_n, \\ \bold{v}_1, \bold{v}_2, ... , \bold{v}_n
이에 대해 고윳값을 대각성분으로 가지는 대각행렬을 만들면 고윳값 행렬이 되고, Λ\boldsymbol{\Lambda}로 표기한다.
Λ=[λ10...00λ2...0............00...λn]\boldsymbol{\Lambda} = \left[ \begin{matrix} \lambda_1 & 0 & ... & 0 \\ 0 & \lambda_2 & ... & 0 \\ ... & ... & ... & ... \\ 0 & 0 & ... & \lambda_n \end{matrix} \right]
이에 대해 고유벡터를 열벡터로 옆으로 쌓아서 만든 행렬을 고유벡터 행렬이라 하고 V\bold{V}로 표기한다.
V=[v1v2...vn]\bold{V} = \left[ \begin{matrix} \bold{v}_1 & \bold{v}_2 & ... & \bold{v}_n \end{matrix} \right]
이렇게 고윳값 행렬과 고유벡터행렬을 정의하면 다음과 같은 등식이 성립한다.
AV=A[v1v2...vn]=[Av1Av2...Avn]=[λv1λv2...λvn]=[v1v2...vn][λ10...00λ2...0............00...λN]=VΛAV=VΛ\begin{aligned} \bold{AV} &= \bold{A} \left[ \begin{matrix} \bold{v}_1 & \bold{v}_2 & ... & \bold{v}_n \end{matrix} \right] \\ &= \left[ \begin{matrix} \bold{Av}_1 & \bold{Av}_2 & ... & \bold{Av}_n \end{matrix} \right] \\ &= \left[ \begin{matrix} \lambda\bold{v}_1 & \lambda\bold{v}_2 & ... & \lambda\bold{v}_n \end{matrix} \right] \\ &= \left[ \begin{matrix} \bold{v}_1 & \bold{v}_2 & ... & \bold{v}_n \end{matrix} \right] \left[ \begin{matrix} \lambda_1 & 0 & ... & 0 \\ 0 & \lambda_2 & ... & 0 \\ ... & ... & ... & ... \\ 0 & 0 & ... & \lambda_N \end{matrix} \right] \\ &= \bold{V} \boldsymbol{\Lambda} \\ \therefore \bold{AV} &= \bold{V}\boldsymbol{\Lambda} \end{aligned}
만익 고유벡터 행렬 V\bold{V}에 역행렬이 존재하면 행렬을 다음처럼 고유벡터행렬과 고유값행렬의 곱으로 표현할 수 있다. 이를 행렬의 대각화(diagonalization)이라고 한다.
행렬이 대각화 가능하려면 고유벡터가 선형독립이어야 한다.
A=VΛV1\bold{A} = \bold{V}\boldsymbol{\Lambda}\bold{V}^{-1}
행렬 A\bold{A}가 대각화 가능하고, 0인 고윳값이 없으면 항상 역행렬이 존재한다. 그리고 이 역행렬은 다음처럼 계산할 수 있다.
A1=(VΛV1)1=VΛ1V1\bold{A}^{-1} = (\bold{V}\boldsymbol{\Lambda}\bold{V}^{-1})^{-1} = \bold{V}\boldsymbol{\Lambda}^{-1}\bold{V}^{-1}
만일 행렬 A\bold{A}가 실수인 대칭행렬이면, 고윳값이 실수이고 고유벡터는 서로 직교한다.
만일 고유벡터들의 크기가 1이 되도록 정규화된 상태라면 고유벡터 행렬 V\bold{V}는 정규직교 행렬이므로 전치행렬이 역행렬이 된다.
VV=VV=IV1=V\begin{aligned} \bold{V}^\top \bold{V} &= \bold{VV}^\top = \bold{I} \\ \bold{V}^{-1} &= \bold{V}^\top \end{aligned}
따라서 대각화 가능하고 다음처럼 쓸 수 있다.
A=VΛV\bold{A} = \bold{V}\boldsymbol{\Lambda}\bold{V}^\top
이 사실로부터 실수인 대칭행렬은 항상 대각화 가능하다는 정리가 도출 가능하다.
행렬 A\bold{A}가 대각화 가능하면 0이 아닌 고윳값의 수는 rank(A)\text{rank}(\bold{A})가 된다.

대각성분 추출(diag)

행렬 A\bold{A}가 다음과 같을 때, diag(A)\text{diag}(\bold{A})는 행렬의 대각성분만 추출하여 벡터로 만든다.
A=(a11a12a1na21a22a2nam1am2amn)Fm×n\bold{A} = \begin{pmatrix} a_{11} & a_{12} & \dots & a_{1n} \\ a_{21} & a_{22} & \dots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \dots & a_{mn} \end{pmatrix} \in F^{m\times n}
이것은 정사각 행렬이 아니어도 정의가 되므로, 만일 m>nm > n이면
diag(A)=(a11a22ann)\text{diag}(\bold{A}) = \begin{pmatrix} a_{11} \\ a_{22} \\ \vdots \\ a_{nn} \end{pmatrix}
m<nm < n이면
diag(A)=(a11a22amm)\text{diag}(\bold{A}) = \begin{pmatrix} a_{11} \\ a_{22} \\ \vdots \\ a_{mm} \end{pmatrix}

참조