Complexityクラス行列を反転していますか?
ランタイムから、私はyesと言いますが、逆行列には、サイズが入力によって多項的に制限されていないエントリを含めることができますか?
Complexityクラス行列を反転していますか?
ランタイムから、私はyesと言いますが、逆行列には、サイズが入力によって多項的に制限されていないエントリを含めることができますか?
回答:
はい、それは多項式時間で行うことができますが、証明は非常に微妙です。ガウスの消去法は数値の乗算と加算を含み、これらの各算術演算を実行する時間はそれらの大きさに依存するため、これは単に時間ではありません。一部の行列では、中間値が非常に大きくなる可能性があるため、ガウス消去法は必ずしも多項式時間で実行されるとは限りません。
幸い、多項式時間で実行されるアルゴリズムがあります。実行時間が多項式であることを証明するために、アルゴリズムの設計とアルゴリズムの分析にかなりの注意が必要ですが、実行できます。たとえば、Bareissのアルゴリズムの実行時間はようなものです(実際にはそれよりも複雑ですが、とりあえず簡略化してください)。
詳細については、Dick Liptonのブログエントリ「Forgetting Results」と「Gaussian除去の実際の時間の複雑さ」を参照してください。そして、Wikipediaの要約。
最後に、注意が必要です。正確な実行時間は、作業しているフィールドによって異なります。上記の説明は、有理数を扱う場合に適用されます。一方、たとえば、有限体(2を法とする整数)で作業している場合、単純なガウスの消去はO (n 3)時間で実行されます。これが何を意味するのか理解していない場合は、おそらくこの最後の段落を無視できます。
逆行列のエントリには、元の行列のマイナーの行列と元の行列全体の行列の2つの行列式の比率として各エントリを与える式があります。これは、「サイズ」の合理的な概念が与えられれば、逆行列のエントリのサイズを制限するのに役立ちます(整数行列から始めても、逆行列は有理エントリを含む可能性があることに注意してください)。
そうは言っても、多くの場合、行列の逆は、規模に関係なく基本的な演算を数える代数的複雑性理論の観点から検討されます。このモデルでは、逆行列の複雑さは、多対数項までの行列乗算の複雑さと同等であることを示すことができます。この削減は、おそらく係数のサイズを制限するのにも役立ちます。
代数的複雑性理論モデルの効率的なアルゴリズムを考えると、それが通常のモデルで同様に効率的なアルゴリズムを意味するかどうか疑問に思います。最終的なエントリは多項式サイズですが、計算にはより大きなものが含まれている可能性がありますか?これはおそらくそうではなく、たとえそうであったとしても、中国の剰余定理を使用して問題をおそらく回避することができます。