クロネッカー積のソースを表示
←
クロネッカー積
ナビゲーションに移動
検索に移動
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
{{for|対称群の表現のクロネッカー積|クロネッカー係数}} [[数学]]における行列の'''クロネッカー積'''(クロネッカーせき、{{lang-en-short|''Kronecker product''}})⊗ は任意サイズの[[行列]]の間に定義される[[二項演算]]で、その結果は[[区分行列]]として与えられる。行列単位からなる標準基底に関する線型空間の[[テンソル積]]の行列として与えられる。クロネッカー積は通常の[[行列の積]]とはまったく異なる概念であるので、混同すべきではない。名称は[[レオポルト・クロネッカー]]に因む。 == 定義 == ''A'' = (''a''<sub>''ij''</sub>) を ''m'' × ''n'' 行列、''B'' = (''b''<sub>''kl''</sub>) を ''p'' × ''q'' 行列とすると、それらのクロネッカー積 ''A'' ⊗ ''B'' は : <math>A\otimes B = \begin{bmatrix} a_{11} B & \cdots & a_{1n}B \\ \vdots & \ddots & \vdots \\ a_{m1} B & \cdots & a_{mn} B \end{bmatrix}</math> で与えられる ''mp'' × ''nq'' 区分行列である。もっとはっきり成分を示せば、 ''A'' ⊗ ''B'' は : <math>\begin{bmatrix} a_{11} b_{11} & a_{11} b_{12} & \cdots & a_{11} b_{1q} & \cdots & \cdots & a_{1n} b_{11} & a_{1n} b_{12} & \cdots & a_{1n} b_{1q} \\ a_{11} b_{21} & a_{11} b_{22} & \cdots & a_{11} b_{2q} & \cdots & \cdots & a_{1n} b_{21} & a_{1n} b_{22} & \cdots & a_{1n} b_{2q} \\ \vdots & \vdots & \ddots & \vdots & \ddots & \ddots & \vdots & \vdots & \ddots & \vdots \\ a_{11} b_{p1} & a_{11} b_{p2} & \cdots & a_{11} b_{pq} & \cdots & \cdots & a_{1n} b_{p1} & a_{1n} b_{p2} & \cdots & a_{1n} b_{pq} \\ \vdots & \vdots & \ddots & \vdots & \ddots & \ddots & \vdots & \vdots & \ddots & \vdots \\ \vdots & \vdots & \ddots & \vdots & \ddots & \ddots & \vdots & \vdots & \ddots & \vdots \\ a_{m1} b_{11} & a_{m1} b_{12} & \cdots & a_{m1} b_{1q} & \cdots & \cdots & a_{mn} b_{11} & a_{mn} b_{12} & \cdots & a_{mn} b_{1q} \\ a_{m1} b_{21} & a_{m1} b_{22} & \cdots & a_{m1} b_{2q} & \cdots & \cdots & a_{mn} b_{21} & a_{mn} b_{22} & \cdots & a_{mn} b_{2q} \\ \vdots & \vdots & \ddots & \vdots & \ddots & \ddots & \vdots & \vdots & \ddots & \vdots \\ a_{m1} b_{p1} & a_{m1} b_{p2} & \cdots & a_{m1} b_{pq} & \cdots & \cdots & a_{mn} b_{p1} & a_{mn} b_{p2} & \cdots & a_{mn} b_{pq} \end{bmatrix}</math> と書ける。行列 ''A'' および ''B'' が[[線型写像]] ''V''<sub>1</sub> → ''W''<sub>1</sub> および ''V''<sub>2</sub> → ''W''<sub>2</sub> をそれぞれ表現するならば ''A'' ⊗ ''B'' はそれらの写像の[[テンソル積]] ''V''<sub>1</sub> ⊗ ''V''<sub>2</sub> → ''W''<sub>1</sub> ⊗ ''W''<sub>2</sub> を表現する。 例えば、 :<math> \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} \otimes \begin{bmatrix} 0 & 5 \\ 6 & 7 \end{bmatrix} = \begin{bmatrix} 1\cdot 0 & 1\cdot 5 & 2\cdot 0 & 2\cdot 5 \\ 1\cdot 6 & 1\cdot 7 & 2\cdot 6 & 2\cdot 7 \\ 3\cdot 0 & 3\cdot 5 & 4\cdot 0 & 4\cdot 5 \\ 3\cdot 6 & 3\cdot 7 & 4\cdot 6 & 4\cdot 7 \\ \end{bmatrix} = \begin{bmatrix} 0 & 5 & 0 & 10 \\ 6 & 7 & 12 & 14 \\ 0 & 15 & 0 & 20 \\ 18 & 21 & 24 & 28 \end{bmatrix} </math> のような計算が成り立つ。 == 性質 == === 双線型性と結合性 === クロネッカー積はテンソル積の特別な場合であるから、[[双線型写像|双線型性]]と[[結合法則|結合性]]を持つ。すなわち、''A'', ''B'', ''C'' を適当なサイズの行列、''k'' をスカラーとして :<math> A \otimes (B+C) = A \otimes B + A \otimes C, </math> :<math> (A+B)\otimes C = A \otimes C + B \otimes C, </math> :<math> (kA) \otimes B = A \otimes (kB) = k(A \otimes B), </math> :<math> (A \otimes B) \otimes C = A \otimes (B \otimes C)</math> が成り立つ。 クロネッカー積は[[交換法則|可換]]でなく、一般には ''A'' ⊗ ''B'' と ''B'' ⊗ ''A'' は異なる行列となる。しかし ''A'' ⊗ ''B'' と ''B'' ⊗ ''A'' とは置換同値、すなわち[[置換行列]] ''P'', ''Q'' で :<math> A \otimes B = P(B\otimes A)Q</math> となるものが存在する。さらに ''A'', ''B'' が正方行列の場合には、''A'' ⊗ ''B'' と ''B'' ⊗ ''A'' とは[[置換相似]]、すなわち置換同値であって ''P'' = ''Q''<sup>⊤</sup> とすることができる。 === 混合積性質 === 行列 ''A'', ''B'', ''C'', ''D'' は行列の積 ''AC'' および ''BD'' が定義できるようなサイズの行列とすれば、 :<math>(A\otimes B)(C\otimes D) = AC\otimes BD</math> が成立する。これは行列の通常の積とクロネッカー積が混じっているので、混合積性質と呼ばれる。 === 逆元 === 上記の混合積性質から、''A'' ⊗ ''B'' が[[正則行列]]となるための必要十分条件は ''A'' と ''B'' がともに正則となることであって、実際に逆元を :<math> (A \otimes B)^{-1} = A^{-1} \otimes B^{-1}</math> と書くことができる。 === 転置行列 === 行列の転置をとる操作はクロネッカー積に分配的である。すなわち、 :<math>(A\otimes B)^\top = A^\top \otimes B^\top</math> が成立する。 === クロネッカー和と行列の指数 === ''n''-次正方行列 ''A'', ''m''-次正方行列 ''B'' および ''k''-次単位行列 ''I''<sub>''k''</sub> に対して、'''クロネッカー和'''と呼ばれる演算 ⊕ を :<math> A \oplus B = A \otimes I_m + I_n \otimes B</math> で定義する(これは行列の[[直和]]とは'''異なる'''ものであることに注意)。この演算は[[リー環]]のテンソル積に関係がある。 [[行列の指数函数]]に関する公式 :<math> e^{A \oplus B} = e^A \otimes e^B</math> はある種の[[連続時間マルコフ過程]]の数値的評価において有用である {{Citation needed|date=January 2008}}。物理学においても、相互作用しない形の集まりを考えるとき、クロネッカー和が自然に現れる。''H''<sup>''i''</sup> をそのような系の ''i''-番目のハミルトニアンとすれば、系の集まり全体のハミルトニアンは : <math>H_{\mathrm{Tot}}=\bigoplus_{i}H^{i}</math> で与えられる。 === スペクトル === ''A'', ''B'' はそれぞれ ''m'', ''n''-次正方行列とし、重複度までこめて ''A'' の[[固有値]]が λ<sub>1</sub>, …, λ<sub>''m''</sub>, ''B'' の固有値が μ<sub>1</sub>, …, μ<sub>''n''</sub> であるとすると、''A'' ⊗ ''B'' の固有値は :<math> \lambda_i \mu_j \quad (i=1,\ldots,m;\; j=1,\ldots,n)</math> で与えられる。従って、クロネッカー積の[[蹟 (線型代数学)|蹟]]と[[行列式]]に関して :<math> \operatorname{tr}(A \otimes B) = \operatorname{tr}\, A\ \operatorname{tr}\,B,</math> :<math> \det(A \otimes B) = (\det A)^n (\det B)^m</math> が成立することが分かる。 === 特異値 === 矩形行列 ''A'', ''B'' に関してその[[特異値分解|特異値]]を考えることができる。行列 ''A'' が ''r''<sub>''A''</sub> 個の非零特異値 :<math>\sigma_{A,i}\quad (i = 1, \ldots, r_A)</math> を持つものとし、同様に ''B'' の非零特異値を :<math>\sigma_{B,i}\quad (i = 1, \ldots, r_B)</math> で表せば、クロネッカー積 ''A'' ⊗ ''B'' は ''r''<sub>''A''</sub>''r''<sub>''B''</sub> 個の特異値 :<math> \sigma_{A,i}\sigma_{B,j}\qquad (i=1,\ldots,r_A;\; j=1,\ldots,r_B)</math> を持つ。[[行列の階数]]はその非零特異値の個数に等しいから、 :<math> \operatorname{rank}(A \otimes B) = \operatorname{rank}A\ \operatorname{rank}B</math> も分かる。 === 抽象テンソル積との関係 === 行列のクロネッカー積は線型写像に対する抽象的なテンソル積に対応する。具体的に、ベクトル空間 ''V'', ''W'', ''X'', ''Y'' がそれぞれ基底 {''v''<sub>1</sub>, …, ''v''<sub>''m''</sub>}, {''w''<sub>1</sub>, …, ''w''<sub>''n''</sub>}, {''x''<sub>1</sub>, …, ''x''<sub>''d''</sub>}, {''y''<sub>1</sub>, …, ''y''<sub>''e''</sub>} を持つものとすると、行列 ''A'', ''B'' がそれぞれ線型写像 ''S'': ''V'' → ''X'', ''T'': ''W'' → ''Y'' を所期の基底に関して表現するならば、クロネッカー積 ''A'' ⊗ ''B'' は写像のテンソル積 ''S'' ⊗ ''T'': ''V'' ⊗ ''W'' → ''X'' ⊗ ''Y'' を、''V'' ⊗ ''W'' の基底 {''v''<sub>1</sub> ⊗ ''w''<sub>1</sub>, ''v''<sub>1</sub> ⊗ ''w''<sub>2</sub>, …, ''v''<sub>2</sub> ⊗ ''w''<sub>1</sub>, …, ''v''<sub>''m''</sub> ⊗ ''w''<sub>''n''</sub>} および ''X'' ⊗ ''Y'' の同様の基底に関して表現するもので、 : ''A'' ⊗ ''B''(''v''<sub>''i''</sub> ⊗ ''w''<sub>''j''</sub>) = (''Av''<sub>''i''</sub>)⊗(''Bw''<sub>''j''</sub>) なる性質が満たされる<ref>Pages 401–402 of {{Citation| last=Dummit| first=David S.| last2=Foote| first2=Richard M.| title=Abstract Algebra| edition=2| year=1999| publisher=John Wiley and Sons, Inc.| place=New York| isbn=0-471-36857-1}}</ref>。ただし、''i'', ''j'' は適当な範囲を動く整数とする。 ''V'', ''W'' が[[リー環]]で、''S'': ''V'' → ''V'', ''T'': ''W'' → ''W'' が[[リー環準同型]]のとき、''A'' と ''B'' のクロネッカー積は誘導されたリー環準同型 ''V'' ⊗ ''W'' → ''V'' ⊗ ''W'' を表現する。 === グラフの積との関係 === [[グラフ理論|グラフ]]の[[隣接行列]]のクロネッカー積は[[グラフのテンソル積]]の隣接行列になる。また、グラフの隣接行列のクロネッカー和は[[直積グラフ]]の隣接行列である<ref name="TAOCP0a">D. E. Knuth: '' [http://www-cs-faculty.stanford.edu/~knuth/fasc0a.ps.gz "Pre-Fascicle 0a: Introduction to Combinatorial Algorithms"], zeroth printing (revision 2), to appear as part of D.E. Knuth: ''The Art of Computer Programming Vol. 4A'' answer to Exercise 96.</ref>。 == 行列方程式 == クロネッカー積はある種の行列方程式の簡便な表現を得るのに利用することができる。例えば、''A'', ''B'', ''C'' が与えられていて、''X'' を未知とするときの、方程式 ''AXB'' = ''C'' を考えると、この方程式は :<math> (B^\top \otimes A)\operatorname{vec}(X) = \operatorname{vec}(AXB) = \operatorname{vec}(C)</math> の形に書き下すことができる。ここで、vec(''X'') は、行列 ''X'' の各列を縦に積んで一つの[[列ベクトル]]の形にした、''X'' のベクトル化である。このときクロネッカー積の性質から、方程式 ''AXB'' = ''C'' がただ一つの解をもつための必要十分条件が ''A'' および ''B'' がともに非特異であること {{harv|Horn|Johnson|1991|loc=Lemma 4.3.1}} が従う。 ''X'' を行順に列ベクトルとしたものを '''x''' とすれば ''AXB'' は (''A'' ⊗ ''B''<sup>⊤</sup>)'''x''' と書ける {{harv|Jain|1989|loc=2.8 Block Matrices and Kronecker Products}}。 == 多変量統計 == 多変量統計におけるモーメントはクロネッカー積を用いて表すことができる。<br> '''x''' = (X<sub>1</sub>, X<sub>2</sub>, ... ) を多変量のベクトルとすれば、<ref>{{Cite | author = Tõnu Kollo, D. Von Rosen | title = Advanced Multivariate Statistics with Matrices | publisher = Springer | series = Mathematics and Its Applications | volume = 579 | edition = M. Hazewinkel | date = Jan 1, 2005 | pages = 172-173(489) | url = http://link.springer.com/book/10.1007/1-4020-3419-9/page/1 | doi = | isbn = 978-1-4020-3419-0 }}</ref> *一次のモーメントは、<math> \mu_1 = E[x] = (E[X_1], E[X_2], ...) </math> *二次のモーメントは、<math> \mu_2 = E[x \otimes x^t] = (E[X_1^2], E[X_2^2], ..., E[X_1X_2], E[X_1X_3], ... )</math> 三変数での例 :<math> \begin{bmatrix} a \\ b \\ c \end{bmatrix} \otimes \begin{bmatrix} a & b & c \end{bmatrix} = \begin{bmatrix} a \cdot a & a \cdot b & a \cdot c \\ b \cdot a & b \cdot b & b \cdot c \\ c \cdot a & c \cdot b & c \cdot c \end{bmatrix} </math> で共分散行列となる。 同様に、 *三次モーメントは、<math> \mu_3 = E[x \otimes x^t \otimes x^t] </math> 2変数での例 :<math> \begin{bmatrix} a \\ b \end{bmatrix} \otimes \begin{bmatrix} a & b \end{bmatrix} \otimes \begin{bmatrix} a & b \end{bmatrix} = \begin{bmatrix} a \cdot a & a \cdot b \\ b \cdot a & b \cdot b \end{bmatrix} \otimes \begin{bmatrix} a & b \end{bmatrix} = \begin{bmatrix} aa \cdot a & aa \cdot b & ab \cdot a & ab \cdot b \\ ba \cdot a & ba \cdot b & bb \cdot a & bb \cdot b \end{bmatrix} </math> *四次モーメントは、<math> \mu_4 = E[x \otimes x^t \otimes x^t \otimes x^t] </math> 一般に k 次モーメントは、<math> \mu_k = E[x^{\otimes k}]</math> と書かれる。 == 歴史 == クロネッカー積は[[レオポルト・クロネッカー]]にその名を由来するが、クロネッカーが最初に定義をして用いたという証拠はわずかしかない。実際に過去には、[[ヨハン・ゲオルク・ツェーフス]]に因んで'''ツェーフス行列''' ({{lang|de|''Zehfuss''}} ''matrix'') と呼ばれたこともある。 == 関連項目 == * [[行列の乗法]] == 脚注 == {{Reflist}} == 参考文献 == * {{citation | first1=Roger A. | last1=Horn | first2=Charles R. | last2=Johnson | year=1991 | title=Topics in Matrix Analysis | publisher=Cambridge University Press | isbn=0-521-46713-6 }}. *{{citation | first1=Anil K. | last1=Jain | year = 1989 | title=Fundamentals of Digital Image Processing | publisher= Prentice Hall | isbn=0-13-336165-9}}. * {{citation | first1=Willi-Hans | last=Steeb | year=1997 | title=Matrix Calculus and Kronecker Product with Applications and C++ Programs | publisher=World Scientific Publishing | isbn=9810232411 }} * {{citation | first1=Willi-Hans | last=Steeb | year=2006 | title=Problems and Solutions in Introductory and Advanced Matrix Calculus | publisher=World Scientific Publishing | isbn=9812569162 }} == 外部リンク == * {{planetmath reference|id=4163|title=Kronecker product}} * [http://mathworld.wolfram.com/MatrixDirectProduct.html MathWorld Matrix Direct Product] * [http://issc.uj.ac.za/downloads/problems/newkronecker.pdf New Kronecker product problems] * [http://jeff560.tripod.com/k.html Earliest Uses: The entry on The Kronecker, Zehfuss or Direct Product of matrices has historical information.] {{DEFAULTSORT:くろねつかあせき}} [[Category:行列]] [[Category:線型代数学]] [[Category:双線型演算]] [[Category:数学に関する記事]] [[Category:人名を冠した数式]]
このページで使用されているテンプレート:
テンプレート:Citation
(
ソースを閲覧
)
テンプレート:Citation needed
(
ソースを閲覧
)
テンプレート:Cite
(
ソースを閲覧
)
テンプレート:For
(
ソースを閲覧
)
テンプレート:Harv
(
ソースを閲覧
)
テンプレート:Lang
(
ソースを閲覧
)
テンプレート:Lang-en-short
(
ソースを閲覧
)
テンプレート:Planetmath reference
(
ソースを閲覧
)
テンプレート:Reflist
(
ソースを閲覧
)
クロネッカー積
に戻る。
ナビゲーション メニュー
個人用ツール
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
ソースを閲覧
履歴表示
その他
検索
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
特別ページ
ツール
リンク元
関連ページの更新状況
ページ情報