Skip to content

Commit e4550dc

Browse files
committed
posDef_iff_posSemidef_of_inj_mulVec
1 parent 819bbf6 commit e4550dc

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

Mathlib/LinearAlgebra/Matrix/PosDef.lean

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,13 @@ theorem posDef_iff_dotProduct_mulVec {M : Matrix n n R} :
458458
simp [PosDef, ← Finsupp.equivFunOnFinite.forall_congr_right, dotProduct, mulVec,
459459
Finsupp.sum_fintype, Finset.mul_sum, mul_assoc, this]
460460

461+
lemma posDef_iff_posSemidef_of_injective_mulVec [StarOrderedRing R'] [NoZeroDivisors R']
462+
{A : Matrix n n R'} (h : Function.Injective A.mulVec) : PosDef A ↔ A.PosSemidef := by
463+
refine ⟨fun hA ↦ hA.posSemidef, fun hA ↦ ?_⟩
464+
refine posDef_iff_dotProduct_mulVec.mpr ⟨hA.isHermitian, fun x hx ↦ lt_of_le_of_ne' ?_ ?_⟩
465+
· exact hA.dotProduct_mulVec_nonneg x
466+
simpa [hA.dotProduct_mulVec_zero_iff, hx] using h.eq_iff (a := x) (b := 0)
467+
461468
namespace PosDef
462469

463470
/-- A matrix `M : Matrix n n R` is positive definite if it is Hermitian

0 commit comments

Comments
 (0)