Matrix algebras as star ordered rings #
This file keeps the upstream monlib4 API around matrix positivity and the
MatrixOrder scoped order. Current Mathlib supplies the underlying matrix
order and StarOrderedRing instance, so this file restores the Monlib-facing
negative definiteness definitions, spectral criteria, and compatibility names.
theorem
Matrix.NegSemidef.nonpos_eigenvalues
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.NegSemidef)
(i : n)
:
theorem
Matrix.NegDef.neg_eigenvalues
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.NegDef)
(i : n)
:
theorem
Matrix.diagonal_posSemidef_iff
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[DecidableEq n]
(x : n → 𝕜)
:
theorem
Matrix.diagonal_negSemidef_iff
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
(x : n → 𝕜)
:
theorem
Matrix.diagonal_posDef_iff
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[DecidableEq n]
(x : n → 𝕜)
:
theorem
Matrix.posSemidef_iff_of_isHermitian
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.IsHermitian)
:
theorem
Matrix.posSemidef_iff_isHermitian_and_nonneg_spectrum
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
:
theorem
Matrix.posDef_iff_of_isHermitian
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.IsHermitian)
:
theorem
Matrix.posSemidef_iff_commute
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
{x y : Matrix n n 𝕜}
(hx : x.PosSemidef)
(hy : y.PosSemidef)
:
theorem
Matrix.innerAut_negSemidef_iff
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
(U : ↥(unitaryGroup n 𝕜))
{a : Matrix n n 𝕜}
:
theorem
Matrix.innerAut_negDef_iff
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
(U : ↥(unitaryGroup n 𝕜))
{x : Matrix n n 𝕜}
:
f_U(x) is negative definite if and only if x is negative definite.
theorem
Matrix.negSemidef_iff_of_isHermitian
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.IsHermitian)
:
theorem
Matrix.negDef_iff_of_isHermitian
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.IsHermitian)
:
theorem
Matrix.posDef_of_posSemidef
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.PosSemidef)
:
theorem
Matrix.negDef_of_negSemidef
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
[DecidableEq n]
{x : Matrix n n 𝕜}
(hx : x.NegSemidef)
:
@[reducible]
The matrix partial order induced by positive semidefinite differences.
Equations
Instances For
theorem
Matrix.PiStarOrderedRing
{ι : Type u_1}
{n : ι → Type u_2}
[(i : ι) → Fintype (n i)]
:
StarOrderedRing (PiMat ℂ ι n)
theorem
Matrix.PosSemidef.conj_by_isHermitian_posSemidef
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
{x y : Matrix n n 𝕜}
(hx : x.PosSemidef)
(hy : y.IsHermitian)
:
(y * x * y).PosSemidef
theorem
Matrix.IsHermitian.conj_by_isHermitian_posSemidef
{𝕜 : Type u_1}
{n : Type u_2}
[RCLike 𝕜]
[Fintype n]
{x y : Matrix n n 𝕜}
(hx : x.IsHermitian)
(hy : y.PosSemidef)
:
(x * y * x).PosSemidef
theorem
Matrix.isHermitian_mul_iff
{α : Type u_1}
{n : Type u_4}
[NonUnitalSemiring α]
[StarRing α]
[Fintype n]
{A B : Matrix n n α}
(hA : A.IsHermitian)
(hB : B.IsHermitian)
:
Alias of Matrix.commute_iff.
Alias of Matrix.IsHermitian.commute_iff.
theorem
Matrix.innerAut.map_pow
{n : Type u_1}
[Fintype n]
[DecidableEq n]
{𝕜 : Type u_2}
[RCLike 𝕜]
(U : ↥(unitaryGroup n 𝕜))
(x : Matrix n n 𝕜)
(n✝ : ℕ)
: