線形代数で行列の「正則」で悩んでいます。
手持ちの線形代数の本ではどの本も 「正則」の「定義」が

正方行列 A に対して XA = AX = E(単位行列)
となる X が存在する場合 A は「正則」である。

と定義し、これを出発点として様々な定義を導いています。
これはこれでよいのですが、しかし、よく考えてみると

1) XA=E が存在する場合 A は正則とする(左逆行列による正則の定義)
2) XA=E が存在する場合AX'=E が存在する(右逆行列の存在定理)
3) X = X' (左逆行列 と 右逆行列の同一性の定理)

というように、定義は基本的な定義と2個の定理に
分解できるような気がします。
定理なら証明が必要と思い、いろいろ考えてみたのですが、
1),かつ2) ⇒ 3) は XAX' = X = X' なので簡単なのですが、
2) をどうしても証明できません。

そもそもこのような定義から出発するのは間違っているのでしょうか?
また、2)の証明が載っている参考書はありませんでしょうか?

以上よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

齋藤正彦『線型代数入門』(東大出版、1966年)は


XA=AX=EとなるXの存在でAの正則性を定義(p.41)しつつ、
区分けや基本変形を説明した上で、
「XA=EとなるXが存在すればAは正則、AX=EとなるXの存在を仮定しても同様」(p.49)を証明してる。
ちなみに行列の次数に関する帰納法を使って。

この回答への補足

報告です。
斎藤さんの証明では、掃き出しと区分けを使ってn-1次で成り立つなら
n次 でも成り立つことを示すという筋書きですね。
予備的な証明が結構必要ですが、それでもシンプルで美しいと思います。

他にも、ネットを探っていたら
1) 左逆行列が存在する時、右からのガウスジョルダンが最後まで成功することを
基本行列の性質と行列の結合則を使って背理法で示す方法。
2) 余因子行列を行列式で割ったものが、右逆行列と左逆行列になることを
強引に泥臭く計算で示す方法

などがありました。ここでは配列の数式を書くのが困難なので、これで失礼します。

補足日時:2011/04/19 19:10
    • good
    • 0
この回答へのお礼

ありがとうございます。
ひどく有名な本だとは知っていたのですが、
どうやら本日中に入手出来そうです。

お礼日時:2011/04/19 17:01

手元で何冊かあさってみましたが, あんまり触れている本はないですね.



逆に言えば全くないわけでもなく,
「基礎から学ぶ行列と行列式」(秋山献之ら著, 培風館)
には「XA = AX = E」で逆行列を定義した後で定理として「XA = E または AX = E ならば X は A の逆行列」と書いています (ただし証明はなし).

また, さらに古い本ですが
「線形代数とその応用」(G. ストラング著, 山口昌哉監訳, 井上昭訳, 産業図書)
では
「長方形行列については, (左右の逆行列のうち) 一方の逆行列は存在するが他方は存在しないが, 正方行列ではこのようなことはない」
(カッコ内は私が補足) と述べ, (ガウスの消去法に基づく) 概略を示しています.

もっとも, ケイリー・ハミルトンの定理を仮定していいなら簡単だけどね.
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q逆行列(LU分解)を求める数値的なテクニック

 ある行列の逆行列をLU分解で求めるプログラムを使用しています。その行列の成分の大きさの最大値と最小値の差が10の30乗ほどあります。コンピュータで計算する場合、極端に大きな数字や小さな数字のまま計算すると正しく計算できないことがあります。AA-1=Eなので、行列の各成分をX倍すれば、求めたい逆行列A-1のX倍の逆行列が求まります。これをX分の1にすれば、求めたい逆行列を求めることができます。
 すなわち、各成分の値がコンピュータで処理するのに適していない場合、ある種の補正によって、計算が可能となり、出てきた逆行列はその補正とは反対の操作をすることで求めたい逆行列を求めることができます。

 そこで質問です。
 コンピュータで逆行列を計算するのに適した行列の成分の値の大きさはいくつ程度でしょうか。
 またその適した値にするテクニックとしてはどのようなものがあるでしょうか。

Aベストアンサー

 桁落ちの誤差のためにとんでもない逆行列が計算されてしまうことがあり、これを避けるのは難しい問題ですよね。特に特定の行や列に極めて似通ったものがあるときには極端な差が要素になくてもこのような現象が起きます。ですから、予めそのような組み合わせの行や列が存在しないかどうかを検定するルーチンを用意するというのはどうでしょうか。そのルーチンにひっかかったときには行列の位が殆ど一つ下がるのに等しいわけで、求めた逆行列は殆ど意味がないというウォーニングを出すことにするのです。
 また、対角要素でそれぞれの行を割ったもの(対角要素がすべて1になります)の逆行列を求めた後、その対角要素だけが入り、あとの要素はゼロになる行列をかけてやるという方法を採ると桁落ち誤差が減ると言われています。

Q正則行列×正則行列は正則になりますか?

この質問は個人的に疑問に思ったのですが、
行列A,Bが正則の時、ABとBAも必ず正則になりますか?

Aベストアンサー

なります。

行列 A と B が逆行列を持つとき、
(Bの逆)(Aの逆) が AB の逆行列になるからです。
積 AB(Bの逆)(Aの逆) を計算してごらんなさい。

♯ 行列式を経由するのは、迂遠と思います。

Q5×5の逆行列の求め方

今5×5の行列
x^2 x^3 xy xy^2 x
x^3 x^4 x^2y x^2y^2 x^2
xy x^2y y^2 y^3 y
xy^2 x^2y^2 y^3 y^4 y^2
x x^2 y y^2 n
の逆行列を求めたいのですが
私が学習した範囲では4×4行列の逆行列を求めること
までしかしていないので、5×5の逆行列の求め方がわかりません。
ご存知の方教えていただけませんか?
お願いします。

Aベストアンサー

元の行列をA,単位行列をEとして,
  (A|E)
とかきます.ここで,「|」はAとEを仕切るためのただの仕切りです.
そして,(A|E) を列変換は用いずに行変換だけを用いて,
  (E|?)
となるまで,慎重に変形してください.このときの「?」が逆行列です.
ここでの行変換とは,行同士の定数倍を足し引きする操作をさします.

Q一方が正則で、一方は正則でないの証明方法について Aはn次正方行列で、ある自然数mに対してA^m=E

一方が正則で、一方は正則でないの証明方法について




Aはn次正方行列で、ある自然数mに対してA^m=Enであるとする。以下のことを示せ。
(1)Aは正則で、A^(-1)=A^(m-1)
(2)En-Aまたは(E+A+...+A^{k-1})のうち一方は正則でない。

(1)は解けたのですが(2)がどうやって証明すればいいかわからないです。

自分の解答はこれであっていますか?
ともに正則でないを示すために、背理法を使おうと考えました。
そこで、ともに正則でないの否定の「ともに正則である」と仮定し、矛盾を示せば、
ともに正則でないが示すことができ、
さらに、
ともに正則であるが偽であることも示せますよね?

よって下のような解答になりました

(En-A)(En+A+...+A^{m-1}) = 0
このとき
(En-A)、(En+A+...+A^{m-1}) ともに正則であると仮定する。
(En-A)の逆行列B
(En+A+...+A^{m-1}) の逆行列をCとして、
両辺に左からCBを掛けると
En=0となって矛盾。
よって、
(En-A)と(En+A+...+A^{m-1}) が同時に正則になることはありえないので、
したがって、どちらか一方が正則で、もう一方は正則でない。

下図をイメージとして考えました。
A B
正則でない 正則でない ・・・偽
正則である 正則でない
正則でない 正則である
正則である 正則である ・・・偽

一方が正則で、一方は正則でないの証明方法について




Aはn次正方行列で、ある自然数mに対してA^m=Enであるとする。以下のことを示せ。
(1)Aは正則で、A^(-1)=A^(m-1)
(2)En-Aまたは(E+A+...+A^{k-1})のうち一方は正則でない。

(1)は解けたのですが(2)がどうやって証明すればいいかわからないです。

自分の解答はこれであっていますか?
ともに正則でないを示すために、背理法を使おうと考えました。
そこで、ともに正則でないの否定の「ともに正則である」と仮定し、矛盾を示せば、
ともに正則でないが示すこ...続きを読む

Aベストアンサー

この問題の3ページくらい前のページに
det(AB)=detA*detB って定理が証明されていませんでしたか?
また、7ページくらい前のページに、Aが正則である⇔detA≠0 って証明されていますよね。
これらを使ってよければ簡単ですよね。


さてところで、
・En-Aまたは(E+A+...+A^{k-1})のうち一方は正則でない。 という主張と、
・どちらか一方が正則で、もう一方は正則でない。  という主張は異なっていますね。
前者は、「両方とも正則でない」ケースを許容していますよ。

ーー
実際、帰謬法(背理法)の仮定は、「ともに正則である」ですから、
これが否定されたら「「ともに正則」ではない」=「少なくとも一方は非正則」ですね。



ptwmjaさんの回答は大筋ではあっていますが着地に失敗しています。
誤「したがって、どちらか一方が正則で、もう一方は正則でない。」
正「したがって、どちらか一方は正則でない」

Q一般逆行列の求め方

6×4の行列の逆行列を計算しようとしたのですが,求め方がわからず困っています。以下に教えていただきたい逆行列を示します。

[-a2 a1 0 0]
[-a3 0 a1 0]
[-a4 0 0 a1]
[ 0 -a3 a2 0]
[ 0 -a4 0 a2]
[ 0 0 -a4 a3]

この行列のランクをmaximaを使って計算すると「3」だったのでランク落ちしていることがわかりました。
教科書で確認したところ、ランク落ちの行列には逆行列が存在しないと書いてあったので逆行列を作ることができないのでしょうか?
もしくは、ランク落ちを回避して逆行列を作ることができないのでしょうか?

Aベストアンサー

1列目を4列目に変えた行列
[ a1  0  0 -a2]
[ 0 a1  0 -a3]
[ 0  0 a1 -a4]
[-a3 a2  0  0]
[-a4  0 a2  0]
[ 0 -a4 a3  0]
で説明します。
まず、Aを3×3行列とし、B,C,Dを適切な次元を持つとして、上の行列を
[A B]
[C D]
と分割します。
X,Y,Zを適切な次元の任意の行列、A^-1をAの逆行列とすると、
[A^-1 - XCA^-1 - A^-1BY - A^-1BZCA^-1 X]
[Y                  Z]
が一般逆行列となります。
求めたい一般逆行列は上の一般逆行列の行を入れ替えたものになります。

参考
統計のための行列代数の上巻(D.A.ハーヴィル著)のp.131

Q線形代数>線形変換>表現行列

【問題】
 次のR^3→R^3の写像が線形変換かどうか調べよ。もし線形変換ならば、その表現行列も示せ。

  x       x+y+z 
( y ) |→ ( 0 )
  z       xyz 

/* ----------------------------------------------------------------------- */

と言う問題です。
解答例として以下のように挙げられているのですが、解らない部分があります。

/* ----------------------------------------------------------------------- */

【解答例】

  x      x+y+z 
f( y ) = (  0  )  とおく。
  z       xyz  

   0      1        1      1+2+1     4
f(( 1 ) + ( 1 )) = f( 2 ) = (  0  ) = ( 0 )
   1      0        1      1*2*1     2

  0       1      0+1+1     1+1+0     4
f( 1 ) + f( 1 ) = (  0  ) + (  0  ) = ( 0 )
  1       0      0*1*1     1*1*0     0

なので、

   0      1        0       1
f(( 1 ) + ( 1 )) ≠ f( 1 ) + f( 1 )
   1      0        1       0

よって写像の線形性を満たさないので線形変換ではない。・・・(答)

/* ----------------------------------------------------------------------- */

上記解答例の

  0         1
( 1 ) および ( 1 ) はどこからくるのですか?
  1         0

あとの部分は解ります。宜しくお願いします。

【問題】
 次のR^3→R^3の写像が線形変換かどうか調べよ。もし線形変換ならば、その表現行列も示せ。

  x       x+y+z 
( y ) |→ ( 0 )
  z       xyz 

/* ----------------------------------------------------------------------- */

と言う問題です。
解答例として以下のように挙げられているのですが、解らない部分があります。

/* ----------------------------------------------------------------------- */

【解答例】

  x      x+...続きを読む

Aベストアンサー

神様が与えてくれたんです.
というのは冗談ですが, この変換が「線形変換じゃない」と見たうえで, 「線形変換じゃない」ことを示すために適切と思われるものを任意に選んだだけです. 「それ以外はダメ」というものではありません.

QExcel 2007 <マクロで逆行列を求めたい>

Excel 2007 <マクロで逆行列を求めたい>


任意のn次の正方行列の逆行列をシートを介さずマクロ上のみで求めたいのです。

たとえば

Option Base 1
Sub test()
 dim a() as single
 dim b() as single
 n=5
 redim a(n,n) '行列A
 redim b(n,n) '行列B
 
 for i=1 to n
  for j=1 to n
   ....'a(i,j)に値が入る
  next j
 next i
 
 ....
 .... 'Aの逆行列の要素がBの要素になる。

End Sub 

というマクロです。
(行列Aは逆行列を持つという前提で話を進めます)

以下のサイトより、シートに値があれば、Rangeオブジェクト及びWorksheetFunctionを用いて逆行列を求められることが分かりました。

http://makotowatana.ld.infoseek.co.jp/vba_cell.html


そこでもう一歩踏み込んで、シートを介さずして逆行列の要素を、取得したいのですが、可能でしょうか?

ご存知の方よろしくお願いします。

Excel 2007 <マクロで逆行列を求めたい>


任意のn次の正方行列の逆行列をシートを介さずマクロ上のみで求めたいのです。

たとえば

Option Base 1
Sub test()
 dim a() as single
 dim b() as single
 n=5
 redim a(n,n) '行列A
 redim b(n,n) '行列B
 
 for i=1 to n
  for j=1 to n
   ....'a(i,j)に値が入る
  next j
 next i
 
 ....
 .... 'Aの逆行列の要素がBの要素になる。

End Sub 

というマクロです。
(行列Aは逆行列を持つという前提で話を進めます)

以下のサイトより、シ...続きを読む

Aベストアンサー

>「係数」及び「係数の逆行列」がRANGEではないとだめなのかという趣旨でした。
MInverse 関数の引数は、本来Range 型ではなく、N×N型の配列です。関数の中で、一旦、Range型を配列に変換していますが、2辺の長さ・高さの同じマトリックスの配列なら、そのまま入ります。

>「係数」へ行列の配列の格納方法が分かれば解決しそうです。
セルからでしたら、ループは不要です。

なお、Option Base 1を使わないのは、上位のVB.Net には存在しないので、この先、互換性に近づけるために、使わないようにしています。VBAは、当分の間変わらないとは言われていますが。VBAでは、1から始まるものは、コレクション、0から始まるものは、配列と理解していたほうが問題が少ないです。

一応、URL先のコードは、気になる部分があったので、こちらで作ってみました。ある程度、VBAが書けるようになったら、2バイト文字の変数は使いません。(開発をするような環境の人だけですが、変数など、文字化けを起こして、さっぱり分からなくなってしまうからです。また、使えない2バイト文字があると聞きますが、その内容は詳しくは知りません。)

'//
Sub Simul_Equation_Resolving()
 Dim rng As Range
 Dim rng2 As Range
 Dim Ar As Variant
 Dim Ar2 As Variant
 Dim Ret As Variant
 Dim cnt As Long

'データ(この場合は、明示的にいれたほうがよい)
 Set rng = Range("A2:C4") '係数の数値
 Set rng2 = Range("G2:G4") '右辺
 
'エラーチェック(正しければ、直接配列の準備に入れてもよい)
 If rng.Rows.Count <> rng.Columns.Count Or _
  WorksheetFunction.CountA(rng) <> WorksheetFunction.Count(rng) Or _
  WorksheetFunction.Count(rng) = 0 Then
  MsgBox "数値のみの四角形の範囲を選択してください。", vbExclamation
  Exit Sub
 End If
 If WorksheetFunction.MDeterm(rng) = 0 Then
  MsgBox "解がありません。", vbExclamation
  Exit Sub
 End If
 cnt = rng2.Rows.Count
 If rng.Rows.Count <> cnt Or _
   WorksheetFunction.Count(rng2) <> cnt Then
  MsgBox "右辺の数が違うか、並びが違うか、文字が含まれています。", vbExclamation
  Exit Sub
 End If
 '配列の準備
  Ar = rng.Value
  Ar2 = rng2.Value
 '解を求める関数
 With WorksheetFunction
  Ret = .MMult(.MInverse(Ar), Ar2)
 End With
 '出力
 If IsArray(Ret) Then
  Range("Q2").Resize(cnt).Value = Ret
 End If
 Set rng = Nothing
 Set rng2 = Nothing
End Sub
'//
URL先のコードの訂正
ThisWorkbook.Worksheets("sheet1").Activate ←これは要りません。
ReDim 係数(r, r)  'ここは不要です。

以下は間違いではありませんが、元の表の場合は、上手くありません。
r = Range("A2").End(xlDown).Row - 1 '方程式の行数
    ↓
r = Range("A2", Range("A2").End(xlDown)).Rows.Count 'このようにしたほうがよいです。

Dim 係数の行列式 As Double ←Double型にする意味がありません。入れるなら、Variant 型です。

係数の行列式 = WorksheetFunction.MDeterm(係数)
ここは実行時エラーが発生してしまいますから、間違っています。

On Error Resume Next ~ On Error Goto 0 で取ります。ただし、必ず、係数の行列式は、一旦、Empty を入れます。

>「係数」及び「係数の逆行列」がRANGEではないとだめなのかという趣旨でした。
MInverse 関数の引数は、本来Range 型ではなく、N×N型の配列です。関数の中で、一旦、Range型を配列に変換していますが、2辺の長さ・高さの同じマトリックスの配列なら、そのまま入ります。

>「係数」へ行列の配列の格納方法が分かれば解決しそうです。
セルからでしたら、ループは不要です。

なお、Option Base 1を使わないのは、上位のVB.Net には存在しないので、この先、互換性に近づけるために、使わないようにしています。VB...続きを読む

Q線形代数[行列]の証明問題

線形代数[行列]の証明問題の解答を教えて下さい。

※以下、Oは零行列、Eは単位行列を表す

1.Aが正則な対称行列であれば、Aインバース(Aの逆行列)も対称行列になることを示せ。

2.Aの3乗=Oのとき、E+A、E-Aはともに正則行列になることを示せ。

Aベストアンサー

1
A・A^-1=E

(A・A^-1)^T=E^T

(A^-1)^T・A^T=E

(A^-1)^T・A=E

(A^-1)^T・A・A^-1=E・A^-1

(A^-1)^T=A^-1

2
-A^3=0

E^3-A^3=E

・・・・

E-Aの逆元は・・・

E-Aは・・

・・,・・・,・・・・を補足に書け

Qフランク行列の逆行列を求める問題で質問です。

フランク行列

a ij={ i (i≦j) 、 j (i>j)
(iとjはaの添え字です)

ただし、正方行列とする。

というものの逆行列を求めるもので、要素数がいくら大きくなっても書き換えが最小限で済むプログラムを作って、5×5行列のときにその逆行列を求めたいのですが、何回やっても思うようにいかずに、本当に困っています。どうか助けてください。お願いします。

Aベストアンサー

えぇと, 問題がいまひとつわからないんだけど....
「任意の正方行列の逆行列を (存在すれば) 求める」ことと, 「フランク行列の逆行列を求める」ことって全然違いますよね. どっち?

Q数学についての質問です。 行列Xの行列式を|X|とすると、逆行列X^(-1)の逆行列は |X^(-1

数学についての質問です。

行列Xの行列式を|X|とすると、逆行列X^(-1)の逆行列は
|X^(-1)|=1/|X|
となりますか?

Aベストアンサー

そうなります。

|AB|=|A| |B|なので、B=A^(-1)[←Aの逆行列です]と置くと、

左辺=|AB|=|A A^(-1)|=|E|=1
右辺=|A| |A^(-1)|

よって、|A| |A^(-1)|=1
ゆえに、|A^(-1)|=1/|A|


人気Q&Aランキング

おすすめ情報