本記事の内容
本記事はエルミート行列、ユニタリ行列、直交行列について解説する記事です。
本記事を読むにあたり「行列とは何か?」ということについて知っている必要があるため、以下の記事も合わせてご覧ください。
複素行列
成分がすべて実数であるような行列を実行列と言いました。
それに対して、成分が複素数であるような行列を複素行列といいます。
複素行列
複素数を成分とする行列を複素行列という。前々回(【線型代数学の基礎シリーズ】行列編 その2)証明した行列の演算とその諸性質は、成分を実数に限定していないので、成分が複素数であっても全く同じことが成り立ちます。
例えば、どんなのが複素数列なのか?というと
(1+i32+4i7i4−5i8)
は(2,3)型の複素行列です。
ただし、iは虚数単位です。
複素共役行列
複素共役行列って?
先程、「前々回示した行列の演算とその諸性質は複素行列でも成り立ちますよ〜」という話をしました。
複素行列を考えることで、すなわち成分が複素数であるということを考えることで、実行列に比べて1つだけ新しい演算を考えることができます。
それが「共役」です。
一言で言ってしまえば、
という話です。
これをしっかり表すと、
複素共役行列
m,n∈N、A=(ast)を(m,n)型の複素行列とする。 このとき、Aの各成分astの共役複素数overlineastを第(s,t)成分とする行列を¯Aで表し、Aの複素共役行列という。 すなわち、虚数単位iを用いて (∀s,t∈N;1≤s≤m, 1≤t≤m) ast=xst+iyst(xst,yst∈R) とし、 A=(x11+iy11x12+iy12⋯x1n+iy1nx21+iy21x22+iy22⋯x2n+iy2n⋮⋮⋱⋮xm1+iym1xm2+iym2⋯xmn+iymn) と書いたとき、 ¯A=(x11−iy11x12−iy12⋯x1n−iy1nx21−iy21x22−iy22⋯x2n−iy2n⋮⋮⋱⋮xm1−iym1xm2−iym2⋯xmn−iymn) をAの複素共役行列という。X=(1+i32+4i7i4−5i8)
の複素共役行列¯Xは
¯X=(1−i32−4i−7i4+5i8)
です。
複素共役行列の演算の性質
簡単です。
ノリとしては複素数と共役複素数との関係と同じです。
(演算の諸性質と言っても結局は成分同士の掛け算やらの話をするのだから、そりゃ同じっしょといったところですが)
次が成り立ちます。
定理1.(複素共役行列の演算の性質)
m,n,r∈N、k∈Cとするとき、次が成り立つ。- AおよびBが共に(m,n)型の複素行列であるとき、¯A+B=¯A+¯Bである。
- Aが(m,n)型の複素行列とするとき、¯kA=¯k¯Aである。
- AおよびBがそれぞれ(m,n)型、(n,r)型の複素行列であるとき、¯AB=¯A¯Bである。
- Aが(m,n)型の複素行列であるとき、¯¯A=A
この証明は単に計算するだけです。
定理1.の証明
m,n,r∈N、k∈Cとします。
(1.¯A+B=¯A+¯Bの証明)
A=(ast)およびB=(bst)が共に(m,n)型の複素行列であるとし、
(∀s,t∈N;1≤s≤m, 1≤t≤m) ast=xst+iyst, bst=zst+iwst,(xst,yst,zst,wst∈R)
を用いて
A=(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn),B=(z11+iw11⋯z1n+iw1n⋮⋱⋮zm1+iwm1⋯zmn+iwmn)
と書いたとします。
このとき、
¯A+B=¯(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)+(z11+iw11⋯z1n+iw1n⋮⋱⋮zm1+iwm1⋯zmn+iwmn)=¯((x11+z11)+i(y11+w11)⋯(x1n+z1n)+i(y1n+w1n)⋮⋱⋮(xm1+zm1)+i(ym1+wm1)⋯(xmn+zmn)+i(ymn+wmn))=((x11+z11)−i(y11+w11)⋯(x1n+z1n)−i(y1n+w1n)⋮⋱⋮(xm1+zm1)−i(ym1+wm1)⋯(xmn+zmn)−i(ymn+wmn))=((x11−iy11)+(z11−iw11)⋯(x1n−iy1n)+(z1n−iw1n)⋮⋱⋮(xm1−iym1)+(zm1−iwm1)⋯(xmn−iymn)+(zmn−iwmn))=(x11−iy11⋯x1n−iy1n⋮⋱⋮xm1−iym1⋯xmn−iymn)+(z11−iw11⋯z1n−iw1n⋮⋱⋮zm1−iwm1⋯zmn−iwmn)=¯A+¯B
となって、成り立ちます。
(2.¯kA=¯k¯Aの証明)
k∈Cをp,qRを用いてk=p+iq、Aを(m,n)型の複素行列として、1.のときと同様に
A=(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)
(ただし、xst,yst∈R)
と書いたとします。
このとき、
¯kA=¯(p+iq)(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)=¯((p+iq)(x11+iy11)⋯(p+iq)(x1n+iy1n)⋮⋱⋮(p+iq)(xm1+iym1)⋯(p+iq)(xmn+iymn))=¯((px11−qy11)+i(py11+qx11)⋯(px1n−qy1n)+i(py1n+qx1n)⋮⋱⋮(pxm1−qym1)+i(pym1+qxm1)⋯(pxmn−qymn)+i(pymn+qxmn))=((px11−qy11)−i(py11+qx11)⋯(px1n−qy1n)−i(py1n+qx1n)⋮⋱⋮(pxm1−qym1)−i(pym1+qxm1)⋯(pxmn−qymn)−i(pymn+qxmn))=(px11+i2qy11)−ipy11−iqx11⋯px1n+i2qy1n)−ipy1n−iqx1n⋮⋱⋮pxm1+i2qym1)−ipym1−iqxm1⋯pxmn+i2qymn)−ipymn−iqxmn)=(x11(p−iq)−iy11(−iq+p)⋯x1n(p−iq)−iy1n(−iq+p)⋮⋱⋮xm1(p−iq)−iym1(−iq+p)⋯xmn(p−iq)−iymn(−iq+p))=((p−iq)(x11−iy11)⋯(p−iq)(x1n−iy1n)⋮⋱⋮(p−iq)(xm1−iym1)⋯(p−iq)(xmn−iymn))=(p−iq)(x11−iy11⋯x1n−iy1n⋮⋱⋮xm1−iym1⋯xmn−iymn)=¯k¯A
となって成り立ちます。
(3.¯AB=¯A¯Bの証明)
A=(ast)およびB=(buv)がそれぞれ(m,n)型、(n,r)型の複素行列であるとし、
(∀s,t∈N;1≤s≤m, 1≤t≤m) ast=xst+iyst(xst,yst∈R)(∀u,v∈N;1≤u≤n, 1≤v≤r) buv=zst+iwst(ust,vst∈R)
を用いて
A=(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn),B=(z11+iw11⋯z1n+iw1r⋮⋱⋮zn1+iwm1⋯zmn+iwnr)
と書いたとします。
このとき、
¯AB=¯(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)(z11+iw11⋯z1n+iw1r⋮⋱⋮zn1+iwm1⋯zmn+iwnr)=¯(n∑h=1{(x1hzh1−y1hwh1)+i(x1hwh1+y1hzh1)}⋯n∑h=1{(x1hzhr−y1hwhr)+i(x1hwhr+y1hzhr)}⋮⋱⋮n∑h=1{(xmhzh1−ymhwh1)+i(xmhwh1+ymhzh1)}⋯n∑h=1{(xmhzhr−ymhwhr)+i(xmhwhr+ymhzhr)})=(n∑h=1{(x1hzh1−y1hwh1)−i(x1hwh1+y1hzh1)}⋯n∑h=1{(x1hzhr−y1hwhr)−i(x1hwhr+y1hzhr)}⋮⋱⋮n∑h=1{(xmhzh1−ymhwh1)−i(xmhwh1+ymhzh1)}⋯n∑h=1{(xmhzhr−ymhwhr)−i(xmhwhr+ymhzhr)})=(n∑h=1(x1hzh1+i2y1hwh1−ix1hwh1−iy1hzh1)⋯n∑h=1(x1hzhr+i2y1hwhr−ix1hwhr−iy1hzhr)⋮⋱⋮n∑h=1(xmhzh1+i2ymhwh1−ixmhwh1−iymhzh1)⋯n∑h=1(xmhzhr+i2ymhwhr−ixmhwhr−iymhzhr))=(n∑h=1{x1h(zh1−iwh1)−iy1h(−iwh1+zh1)}⋯n∑h=1{x1h(zhr−iwhr)−iy1h(−iwhr+zhr)}⋮⋱⋮n∑h=1{xmh(zh1−iwh1)−iymh(−iwh1+zh1)}⋯n∑h=1{xmh(zhr−iwhr)−iymh(−iwhr+zhr)})=(x11−iy11⋯x1n−iy1n⋮⋱⋮xm1−iym1⋯xmn−iymn)(z11−iw11⋯z1n−iw1r⋮⋱⋮zn1−iwm1⋯zmn−iwnr)=¯(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn) ¯(z11+iw11⋯z1n+iw1r⋮⋱⋮zn1+iwm1⋯zmn+iwnr)=¯A ¯B
となって、成り立ちます。
(4.¯¯A=Aの証明)
Aを(m,n)型の複素行列として、1.のときと同様に
A=(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)
(ただし、xst,yst∈R)
と書いたとします。
このとき、
¯¯A=¯¯(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)=¯(x11−iy11⋯x1n−iy1n⋮⋱⋮xm1−iym1⋯xmn−iymn)=(x11+iy11⋯x1n+iy1n⋮⋱⋮xm1+iym1⋯xmn+iymn)=A
となって、成り立ちます。
定理1.の証明終わり
随伴行列
随伴行列って?
一言で述べてしまえば、
です。
記号で書けば、複素行列Aに対して、ˉA⊤のことです。
正確に書くと、以下です。
随伴行列
m,n∈Nとし、Aを(m,n)型の複素行列とする。 このとき、Aの複素共役行列¯Aを転置した行列をAの随伴行列という。 すなわち、¯A⊤を随伴行列という。 このとき、Aの随伴行列をA∗で書く。例えば、
X=(1+i32+4i7i4−5i8)
の随伴行列X∗は
X∗=(1−i−734+5i2−4i8)
です。
随伴行列の演算の性質
定理2.(随伴行列の演算の性質)
m,n,r∈N、k∈Cとするとき、次が成り立つ。- AおよびBが共に(m,n)型の複素行列であるとき、(A+B)∗=A∗+B∗である。
- Aが(m,n)型の複素行列とするとき、(kA)∗=¯kA∗である。
- AおよびBがそれぞれ(m,n)型、(n,r)型の複素行列であるとき、(AB)∗=B∗A∗である。
- Aが(m,n)型の複素行列であるとき、(A)∗)∗=A
この定理2.は定理1.と前々回証明した、和、差、積、スカラー倍の性質および転置行列を含む行列の演算の性質から導けます。
これらを列挙します。
定理2.の証明に使う定理集
定理1.(複素共役行列の演算の性質)(再掲)
m,n,r∈N、k∈Cとするとき、次が成り立つ。- AおよびBが共に(m,n)型の複素行列であるとき、¯A+B=¯A+¯Bである。
- Aが(m,n)型の複素行列とするとき、¯kA=¯k¯Aである。
- AおよびBがそれぞれ(m,n)型、(n,r)型の複素行列であるとき、¯AB=¯A¯Bである。
- Aが(m,n)型の複素行列であるとき、¯¯A=A
定理3.(和、差、積、スカラー倍の性質、分配法則)
k,h∈Cとし、m,n,r,s∈Nとする。- 和、差の性質 2つの(m,n)型行列AおよびBに対して、以下が成り立つ。
- A+B=B+A(交換則)
- (A+B)+C=A+(B+C)(和の結合則)
- A+O=A(Oは(m,n)型の零行列)
- A+(−A)=O(Oは(m,n)型の零行列)
- 積の性質 (m,n)型行列A、(n,r)型行列B、(r,s)型行列Cに対して、以下が成り立つ。
- (AB)C=A(BC)(積の結合則)
- AIn=InA=A(Inはn次単位行列)
- AOn=OmA=Omn ただし、Onはn次正方行列の零行列、Omはm次正方行列の零行列、Omnは(m,n)型の零行列を指す。
- スカラー倍の性質 k,h∈Cと(m,n)型行列Aと(n,r)型行列Bに対して次が成り立つ。
- (kh)A=k(hA)
- k(AB)=(kA)B=A(kB)
- 0A=Omn
- 1A=A
- 分配則 k,h∈Cと3つの行列A、B、Cに対して次が成り立つ。
- Aが(m,n)型、B及びCが(n,r)型のとき、A(B+C)=AB+AC
- AとBが(m,n)型、Cが(n,r)型のとき、(A+B)C=AC+BC
- AおよびBが共に(m,n)型のとき、k(A+B)=kA+kB
- AおよびBが共に(m,n)型のとき、(k+h)A=kA+hA
この定理3.(和、差、積、スカラー倍の性質、分配法則)の証明は【線型代数学の基礎シリーズ】行列編 その2を御覧ください。
定理4.(転置行列を含む行列の演算の性質)
k∈C、m,n,r∈Nとし、行列A、B、kに対して、以下が成り立つ。- Aが(m,n)型の行列のとき、すなわち任意の行列に対して、(A⊤)⊤=A
- AおよびBが共に(m,n)型のとき、(A+B)⊤=A⊤+B⊤
- Aが(m,n)型、Bが(n,r)型のとき、(AB)⊤=B⊤ A⊤(順番に注意)
- Aが(m,n)型の行列のとき、すなわち任意の行列に対して、(kA)⊤=kA⊤
この定理4.(転置行列を含む行列の演算の性質)の証明は【線型代数学の基礎シリーズ】行列編 その2を御覧ください。
定理2.の証明
m,n,r∈N、k∈Cとします。
(1.(A+B)=A∗+B∗の証明)
AおよびBが共に(m,n)型の複素行列であるとします。
定理1.の1.(¯X+Y=¯X+¯Y)を使うと、
(A+B)∗=¯A+B⊤=(¯A+¯B)⊤
です。
ここで、定理4.の2.((X+Y)⊤=X⊤+Y⊤)を使うと、
(¯A+¯B)⊤=¯A⊤+¯B⊤=A∗+B∗
となって、成り立ちます。
(2.(kA)∗=¯kA⊤の証明)
Aを(m,n)型の複素行列とします。
定理1.の2.(¯kA=¯k¯A)を使うと、
(kA)∗=(¯kA)⊤=(¯k¯A)⊤
です。
ここで、定理4.の4.((kA)⊤=kA⊤)を使うと、
(¯k¯A)⊤=¯k¯A⊤=¯kA∗
となるので、成り立ちます。
(3.((AB)^*=B^*A^*\)の証明)
AおよびBをそれぞれ(m,n)型、(n,r)型の複素行列とします。
定理1.の3.(¯XY=¯X ¯Y)を使うと、
(AB)∗=¯AB⊤=(¯A ¯B)⊤
です。
ここで、定理4.の3.((XY)⊤=Y⊤X⊤)を使うと、
(¯A ¯B)⊤=¯B⊤¯A⊤=B∗A∗
となるため、成り立ちます。
(4.(A∗)∗=Aの証明)
Aを(m,n)型の複素行列とします。
定理1.の4.(¯¯A=A)を使うと、
(A∗)∗=(¯A⊤)∗=(¯¯A⊤)⊤=(A⊤)⊤
です。
ここで、定理4.の1.((X⊤)⊤=X)を使うと、
(A⊤)⊤=A
となるので、成り立ちます。
定理2.の証明終わり
(書くのが大変だったけど積の性質とかを証明しておいてよかったぁ…と心の中の声をつぶやく)
エルミート行列、ユニタリ行列、直交行列
では、よく出現する複素行列を紹介します。
これらがなぜ必要なのか、いつ使うのか、ということを詳しく述べるのは固有値や固有ベクトルやらの話をする後の記事に回します。
エルミート行列
エルミート行列って何スか?
エルミート行列を一言で言えば、
です。
これをしっかり書くと以下です。
エルミート行列
m,n∈N、Aを(m,n)型の複素行列とする。 このとき、 A∗=A が成り立つならば、Aはエルミート行列という。例えばどんなのっスか?
例えば、どんなのがエルミート行列なのか、というと
X=(01+i2−3i1−i322+3i2−4)
です。
実際、
X∗=¯X⊤=¯(01+i2−3i1−i322+3i2−4)⊤=(01−i2+3i1+i322−3i2−4)⊤=(01+i2−3i1−i322+3i2−4)=X
だからです。
ちなみに、A⊤=Aを満たすような行列を対称行列といいます。
対称行列の成分がすべて実数であるとき、その対称行列は実対称行列といいます。
Aを実対称行列とすると、¯A=Aですので、必ずエルミート行列になります。
すなわち、エルミート行列は実対称行列の一般化になっているということです。
とはいえ、エルミート行列といったらば複素行列を指すことが多いです。
つまり、実対称行列のことをエルミート行列とは呼びません。
いつ使うんスか?
「いつ使うか?」というと固有値、固有ベクトルの話をするときに使います。
というのも、エルミート行列には次のような性質があるからです。
- エルミート行列は正則行列である。(逆行列が存在する)
- エルミート行列の固有値はすべて実数である。(行列の成分は複素数なのに、エルミート行列の固有値と呼ばれるものは必ず実数)
- エルミート行列の相異なる固有値の固有ベクトルは直交(内積=0)する。(固有ベクトルは必ずしも直交しませんが、エルミート行列の固有ベクトルはすべて直交します)
要するに、「めっちゃ考えやすい、良い性質を持ってるんだZE!Yeah!」ということです。
ユニタリ(ユニタリー、ユニタリ)行列と直交行列
ユニタリ行列と直交行列って何スか?
ユニタリ行列を一言でいうと、
逆行列とは何だったか、というと、以下でした。
逆行列
n∈N、Aをn次正方行列とする。このとき、 AB=BA=In を満たすようなBが存在するとき、BをAの逆行列という。 またこのとき、 B=A−1 と書く。ユニタリ行列をしっかり書くと以下です。
ユニタリ行列
m∈Nとし、Aをm次正方行列(すなわち(m,m)型の行列)とする。 このとき、 AA∗=A∗A=Im が成り立つならば、Aをユニタリ(ユニタリー、ユニタリ)行列という。これはまさに、A∗がAの逆行列であるときを示しています。
特に、Aが実行列であるとき、¯A=Aですから、実行列Aがユニタリ行列である、という条件は
AA⊤=A⊤A=Im
となります。
このときにAは直交行列と呼びます。
これをしっかり書くと以下です。
直交行列
m∈Nとし、Aを成分がすべて実数であるようなm次正方行列とする。このとき、 AA⊤=A⊤A=Im が成り立つならば、Aを直交行列という。ちなみに、直交行列がどうして直交行列と呼ばれるのかについてちょと解説します。
m∈Nとして、Aをm次の直交行列として、
A=(a11a12⋯a1ma21a22⋯a2m⋮⋮⋱⋮am1am2⋯amm)
と書いたとします。
このとき、
a1=(a11a21⋮am1),a2=(a12a22⋮am2),⋯,am=(a1ma2m⋮amm)
とすれば、
A=(a1 a1 ⋯ am )
と書くことができます。
同様にして、
A⊤=(a1 a1 ⋯ am )⊤=(a⊤1a⊤2⋮a⊤n)
です。
Aは直交行列ですので、A⊤A=Imですから、
AA⊤=(a⊤1a⊤2⋮a⊤n)(a1 a1 ⋯ an )=(a⊤1a1a⊤1a2⋯a⊤1ama⊤2a1a⊤2a2⋯a⊤2am⋮⋮⋱⋮a⊤ma1a⊤ma2⋯a⊤mam)=(110⋱0⋱1)
すなわち、任意の1≤i,j≤mを満たすi,j∈Nに対して、
a⊤iaj={1(i=j)0(i≠j)
です。
また、a⊤iajはaiとajの内積ですので、直交行列であれば、必ずどの列ベクトルも直交するして、かつ大きさが1というわけです。
同様にして、
a′1=(a11 a12 ⋯ a1n),a′2=(a21 a22 ⋯ a2n),⋮a′m=(am1 am2 ⋯ amm)
とすれば、
A=(a′1a′2⋮a′m)
と書くことができるので、AA⊤=Imから、任意の1≤i,j≤mを満たすi,j∈Nに対して、
a′i(a′j)⊤={1(i=j)0(i≠j)
が導かれます。
従って、直交行列の行ベクトルもすべて直交して、かつ大きさが1ということです。
こういう理由で直交行列と呼ばれます。
例えばどんなのっスか?
例えば、
Y=(0i010000−1)
です。
実際、
YY∗=(0i010000−1)¯(0i010000−1)⊤=(0i010000−1)(010−i0000−1)=(i×(−i)0001×1000(−1)×(−1))=(100010001)=I3
であり、かつ
Y∗Y=¯(0i010000−1)⊤(0i010000−1)=(010−i0000−1)(0i010000−1)=(1×1000(−i)×(−i)000(−1)×(−1))=(100010001)=I3
となるからです。
いつ使うんスか?
ユニタリ行列、直交はいつ使うのか、と聞かれると行列式と対角化の部分で使います。
というもの、ユニタリ行列には以下のような性質があるからです。
- ユニタリ行列は対角化可能である。(平たく言うと、うまく計算することで対角成分以外の成分をすべて0になるように変形できる)
- ユニタリの行列式の値は±1である。(すごい)
- 直交行列の行ベクトルおよび列ベクトルは正規直交基底である。(めちゃくちゃ平たく言うと、座標軸みたいなもん)
結
今回は、複素行列について、特に随伴行列、エルミート行列、ユニタリ行列を解説し、ユニタリ行列の実行列バージョンの直交行列について解説しました。
結局の所、成分が複素数であっても、共役という演算が増えるだけで、特に行列の演算の規則が変わるわけではありません。
また、誠にサラッとですが、それそれがいつ使われるのか、ということも解説しました。
次回は「線型写像とその性質」です。
乞うご期待!質問、コメントなどお待ちしております!
コメントをする