feat(LinearAlgebra/Matrix/Hermitian): add IsSkewHermitian predicate#33821
feat(LinearAlgebra/Matrix/Hermitian): add IsSkewHermitian predicate#33821JohnnyTeutonic wants to merge 12 commits intoleanprover-community:masterfrom
Conversation
PR summary 2c8f930e22Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
acee8e9 to
8ef750c
Compare
|
Some notes:
|
|
Where should The proofs need Add a |
|
@themathqueen - sorry to be a bother, but whenever you are free, please let me know how you'd like me to proceed =) |
Probably a new section? Seems reasonable. Do what you think is best :) |
|
Regarding add/sub: I attempted adding these in a SubtractionCommMonoid section, but ran into a typeclass issue: The proof needs neg_add : -(a + b) = -a + -b which requires SubtractionCommMonoid Add these in a Ring section where all the instances are available |
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
|
Looking at https://en.wikipedia.org/wiki/Skew-Hermitian_matrix, there's some more nice properties you can add here. In particular, @[simp] theorem isSkewHermitian_diagonal_iff [SubtractionMonoid α] [StarAddMonoid α]
[DecidableEq n] (A : n → α) :
(diagonal A).IsSkewHermitian ↔ star A = -A := by
simp [IsSkewHermitian, funext_iff]
theorem IsSkewHermitian.star_diag [SubtractionMonoid α] [StarAddMonoid α]
{A : Matrix n n α} (hA : A.IsSkewHermitian) :
star (diag A) = -(diag A) := by
classical
simp_all [← isSkewHermitian_diagonal_iff, IsSkewHermitian, ← conjTranspose_apply] |
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
|
Added isSkewHermitian_diagonal_iff and star_diag as suggested - thanks for the clean proof! Current PR now includes the full basic API: Definition + eq, ext, apply, ext_iff For the I • A ↔ Hermitian theorem and eigenvalue properties - these involve RCLike proofs in Analysis/Matrix/Hermitian. Happy to add them here if you'd like, or tackle them in a follow-up PR to keep this one scoped to LinearAlgebra/Matrix. What's your preference? |
|
@themathqueen - ready for review unless you'd like more changes. |
|
I think you could probably connect this to skewAdjoint. We don't have an |
|
Good point — IsSkewHermitian is to skewAdjoint as IsHermitian is to IsSelfAdjoint. I can add: Can add that here if warranted. |
|
@JohnnyTeutonic can you please comment on the reason you want this predicate, aside from parallelism? In particular, which types |
|
@j-loreaux |
Adds
IsSkewHermitianpredicate for matrices satisfying Aᴴ = -A.