正の半正定性を確認する必要がある対称行列のリストがあります(つまり、それらの固有値は非負です)。
上記のコメントは、それぞれの固有値を計算し、それらが非負であるかどうかをチェックすることで実行できることを示しています(おそらく丸め誤差を処理する必要があります)
私のシナリオでは固有値の計算は非常に高価ですが、使用しているライブラリは正の確定性(つまり、行列の固有値が厳密に正である場合)のテストが非常に高速であることに気付きました。
したがってアイデアは、マトリックス与えられたであろう、あるテスト場合に正定値です。そうでない場合、は正の半正定値ではありません。そうでない場合、の固有値を計算して、それが実際に正の半正定値であることを確認できます。
私の質問は次のとおりです。
正定性の効率的なテストが提供されている場合、行列が半正定かどうかをテストするより直接的で効率的な方法はありますか?