一連の行列のすべての積が最終的にゼロに等しいかどうかを確認する


19

私は次の問題に興味があります:整数行列がこれらの行列のすべての無限積が最終的にゼロ行列に等しいかどうかを決定します。A1,A2,,Ak

これは、あなたが思うことを正確に意味します:行列のセットは、無限のシーケンスが存在しない場合、すべての積が最終的にゼロに等しいという特性があります、すべて、すべてのに対してとなります。i 1i 2i 3{ 1 k } A i 1 A i 2A i l0 l{A1,,Ak}i1,i2,i3{1,,k}

Ai1Ai2Ail0
l

すべての製品が最終的にゼロに等しいかどうかを決定する問題は、以前に研究されましたか?それは決定可能ですか?

マトリックスの死亡率に関連する可能性があるようです。これは決定できませんが、明確な関係は見当たりません。


無限積が定義されるようにするには、行列のセットに何らかの収束プロパティが必要です。
アンドラスサラモン

無限の成長を伴う有限フィールドまたは整数で動作していますか?k = 1の場合には、それ自身の権利で面白いです。5x5マトリックスで-100から100までの整数を使用して、ゼロになる前に到達できる最大のパワーはどれくらいですか?
チャドブルーベーカー

2
@YuvalFilmus-それは死亡率とは異なると思います。行列の次元を1、数値だけを取得し、と仮定しますA0=0,A1=1。必殺?はい、A0=0です。すべての製品がゼロに等しい?ノー:ない製品111。一方、A0=0,A1=0場合、致命的であり、すべての積がゼロであるシーケンスがあります。
ロビンソン

1
@ChadBrewbaker-行列のエントリは単なる整数であると考えていました。は次の観点から興味深いと思います:行列が無能であることを確認するために必要な操作はいくつですか?Aが無能の場合、A n = 0であることがわかりやすいことに注意してください。nAの次元なので、おそらく行列logをn回二乗することで解くことができます。これがあなたにできる最高のものかどうかはわかりません。k=1AAn=0nAlogn
ロビンソン

1
興味深いことに、これはarxiv.org/abs/1306.0729にあります。すべての製品が最終的にゼロであるかどうかを尋ねる代わりに、一部の製品が最終的にポジティブかどうかを尋ねます。彼らは問題がNP困難であることを示しています(または少なくともそれは私が要約から集めたものです)。
ジョシュアグロチョウ

回答:


17

あなたの質問はが全能代数を生成するかどうかに相当し代数は、各A iが全能であることに相当します。したがってだけでなく、それは決定可能であるが、中ON 2 ω時間ωは、行列乗算の指数です。A1,,AkAiO~(n2ω)ω

してみましょうによって生成された連想代数もA のすべての線形組み合わせ取る、である:A Iとそのすべての有限の製品を。Aは、AN個の要素のすべての積がゼロになるようなNがある場合、無能と呼ばれます。AAiAiANNA

まず、が無能であることを条件が示唆する理由を見てみましょう。これは、ケーニヒの補題(コンパクト)から次のすべての長さの文字列Nアルファベット上{ 1 ... K }の積に相当するA 1... kの長さのN明らかようにします。ノードが{ 1 k }上の文字列と自然に全単射対応である無限k進ルートツリーを考えます。サブツリーTを考えますAn{1,,k}A1,,Aknk{1,,k}T対応する積がゼロでないノードで構成されます。ケーニッヒの補題によれば、Tが無限の場合、無限のパス(プロパティに完全に違反する)があるため、Tは有限です。次に、NTの文字列の最大長とすることができます。そのため、プロパティはAが無能であることを意味します。AiTTNTA

すべての要素はA iの積の線形結合であるため、逆もまた真です。AAi

次に、n × n行列の部分代数であり、したがって有限次元であることに注意してください。An×n

最後に:特性ゼロの有限次元連想代数は、それが無能である場合、無能な要素(通勤かどうか-これはユバルの答えと矛盾する部分です)の基礎を持っています(例えば、ここを参照)。

したがって、問題を解決するには、によって(幅優先探索の線形代数バージョンによって)生成された連想代数の基底を見つけ、基底内のすべての行列が虚数であることを確認します。上限Onは2 ωは線形方程式系を解くことから来ているN 2幅優先探索中の変数。DIM AN 2 BFSはない最後の非常に長いことができ、これらはあるので、N × N行列のかどうかを確認するために行列Aが冪零つだけチェックその必要があるA N =をAiO~(n2ω)n2dimAn2n×nAAn=0


2
あなたは(と同等ですケーニッヒの補題のような弱として一つでも、あらゆる選択肢の原理を使用せずにこれを表示する方法があると思います)?ACω
アンドラスサラモン

2
@アンドラス:それはクリス・コニディスの質問だと思います。彼はそのような質問を(計算可能な)逆数学で研究しました。私は彼に尋ねて、彼をここに向けます。
ジョシュアグロチョウ

1
@robinson:1)はい、問題は、実際に、決定可能であり、時間ωは、行列乗算の指数です。これは、線形代数の幅優先探索を行うときにQ上の線形方程式のシステムを解くことから得られます。2)はい、行列をQ n 2(またはRまたはC上)のベクトルとして表示する場合の通常の基底概念。O(n2ω)ωQQn2RC
ジョシュアグロチョウ

1
あなたは基底で始まるA。今、あなたが探してみてください行列A AB BというようにA 、BまたはB AはのスパンではありませんB。成功したら、製品をBに追加して続行します。それ以外の場合、Bのスパン内の行列にAのマトリックスの有限積を乗算すると、常にBのスパンになります。代数の次元が制限されているため、プロセスは終了します(最大n 2ステップ)。BAAABBABBABBBABn2
ユバルフィルマス

1
@robinson:いいえ。代数が全能である場合、代数のすべての要素は全能です。そのため、非零要素を見つけた場合、代数は零ではありません(そしてゼロではない行列の無限積があります)。
ジョシュアグロチョウ

6

1995年に、この(やや些細な問題)問題、つまりジョイントスペクトル半径(JSR)がゼロかどうかをチェックするためのポリタイムアルゴリズムを取得しました:http : //en.wikipedia.org/wiki/Joint_spectral_radius

アルゴリズムの背後にあるおおまかな話は次のとおりです。BlondelとTsitsiklisは、JSR <1がNP-HARDであるかどうかをチェックするブール行列について誤って述べています。整数行列のセットでは、JSRは0以上の1であるため、それらのステートメントに対する反例は私のアルゴリズムでした(その論文の正誤表を参照)。主な教訓:最初にウィキペディアを参照してください!


5

尋ねている質問は、マトリックスのセットの結合スペクトル半径(JSR)が厳密に1より小さいかどうかを決定することとまったく同じです。この質問の決定可能性は、かなり長い間開かれたままです。(制御理論では、これは、任意のスイッチング下でのスイッチング線形システムの安定性の決定可能性と同等です。)

あなたの質問の次の変種は決定不能であることが知られています:正方行列の有限集合が与えられたら、すべての積が有界のままであるかどうかを決定します。 こちらをご覧ください

サイズが47x47のマトリックスが2つしかない場合でも、上記の決定不能性は有効なままです。こちらを参照してください

JSR言語では、テストの質問は、「JSRある?」は決定不可能ですが(上記の参考文献を参照)、テストの決定可能性は「JSR < 1ですか?」開いています。後者の質問は、いわゆる「合理的な有限性予想」に関連してい ます。合理的な有限性予想が真であれば、あなたが尋ねている質問は決定可能です。1<1

最後に、P = NPでない限り、JSRは多項式時間で近似できません(このホワイトペーパーで定義されている正確な意味)。

その結果、効率的なアルゴリズムを主張する上記の回答の1つは誤りでなければなりません。

良い面としては、JSRを近似するためのいくつかのアルゴリズム(半正定値プログラミングに基づく)があります。異なるアルゴリズムには、異なるパフォーマンス保証が付属しています。たとえば、以下を参照してください(自分と同僚が恥知らずに-しかしその中の参考文献も参照しください)。

いくつかの特別なケースでは、あなたが尋ねている質問は多項式時間で決定可能です。たとえば、行列が対称またはランク1の場合、または行列が通勤する場合。

最後に、このテーマに関するすばらしい本は次のとおりです。


私が尋ねた質問の正式な声明を読んでください-それは、JSRが厳密に1より小さいかどうかを決定することと同等ではありません。あなたは、おそらく、質問のタイトルに惑わされています。要するに、漸近的な意味ではなく、有限時間でゼロに等しいすべての製品について尋ねています。
ロビンソン

2
次に、あなたが尋ねている質問ははるかに簡単です。以下は同等です:(i)定義する条件(ii)すべての有限積は無能です(iii)JSR = 0(iv)長さnのすべての積はゼロです(nは次元であり、これは数に依存しません行列k)。最後の条件は明らかに決定可能性を意味し、事実であれば、多項式時間で条件をチェックできます。私の投稿の最後にリンクされているJungersの本のセクション2.3.1を参照してください。あなたが漸近バージョンを意味していたと思うことをおpびします。(「すべての製品が最終的にゼロに等しい」というフレーズに惑わされました。)
アミール

その場合、@ AmirAliAhmadiはJoshua Grochowによる答えがそれをカバーしないのですか?
スレシュヴェンカト

2
私が考えているものとは異なるアルゴリズムで、それがそうであるように思えます。(繰り返しますが、決定可能性が開いている「すべての製品がゼロに収束するか」(つまり、JSR <1?)であると考えることに対する私の謝罪です。)ジョシュアの答えにはいくつかの違いがあります。(1)前のコメントの(i)-(iv)と同等で、Konigの補題を使用する必要はないと思います。(2)彼がなぜ行列の線形結合を取っているのか理解できない。(3)ユンジャースによる本のセクション2.3.1から、レオニードグルヴィッツに起因する単純な代替アルゴリズムを以下にコピーします。
アミール

4
[上から続く...]チェックする必要があるのは、長さすべての積がゼロであるかどうかだけですが、そのような行列はk n個あります。これを回避するには、次の行列を繰り返し定義します:X 0 = I X j = k i = 1 A T i X j 1 A i。次に、 長さn A T Aの X n = Aがあります。この行列はk nで計算できますnknX0=I, Xj=i=1kAiTXj1AiXn=A product of length nATAkn行列の乗算。長さすべての積がゼロの場合にのみゼロ。n
アミール

0

編集:残念ながら、この答えは間違っています。エラーは以下で強調表示されます。行列を転置できる場合、引数は機能します。

補題を証明することから始めます。

補題。してみましょうあること、N × N行列とlet Nがあること、N × N個の二次対角線上のものと行列。もしA のN T及びN T Aはすべてのための冪零であるT 0、次いでA = 0正しい結論:Aは対角線上にゼロを持つ上三角です。(元の結論は、Nの転置のべき乗も許可される場合に回復されます。)An×nNn×nANtNtAt0A=0AN

証明。たとえば、で、A = a b c d e f g h iと書くと n=3A N 2を 計算することから始めます: A N 2 = 0 0 a 0 0 d 0 0 g この行列は三角形の形式であるため、 A N 2が無能の場合、 g = 0です。続行 A N 1 A N 1 = 0

A=(abcdefghi),N=(010001000).
AN2
AN2=(00a00d00g).
AN2g=0AN1 ここでも、行列は三角形の形式であるため、AN1が無能の場合、d=h=0です。続けて、 AN0= a b c 0 e f 0 0 i 前と同じように、a=e
AN1=(0ab0de0gh)=(0ab0de00h).
AN1d=h=0
AN0=(abc0ef00i).
であるため、 Aは対角線上にゼロがある上三角です。a=e=i=0A

代わりに考慮すると、Aは対角線上にゼロを持つ下三角であると結論付けられます。実際、N t Aを考慮することから新しいものは得られませんしたがって、A = 0です。N2A,N1A,N0AANtAA=0

A1,,Aki1,[k]Ai1Aim=0mAiA1A2A2A1A1V1VtViA1A2A2A1dimVi>10ViA1=NA20t0A2A1tA1tA2

要約すると、プロパティPは、すべての行列が無能であり、すべての行列が可換である場合に保持されます。


4
N2Ag=0N1Ad=h=0N0Aa=e=i=0AA

確かに、この答えは正しくありません。他に誰もいない場合は、今日帰宅したときに補題と最終的な主張の両方に対する反論例を投稿します。
ロビンソン

5
いつものように、何かが主張されているが、証明が失敗したことを証明していないときです。まあ...
のYuval Filmus

1
A0=(010001000),A1=(011000000)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.