Matrices skew-adjoint for a bilinear form #
For a square matrix J, Mathlib's Matrix.IsSkewAdjoint J A is the condition Aᵀ * J = J * -A:
the matrix A is skew-adjoint for the bilinear form B(u, v) = u ⬝ᵥ J v. This file records
basic facts about such matrices, independent of any Lie theory.
When J is invertible, skew-adjointness makes Aᵀ conjugate to -A, so A has trace zero as
soon as 2 is invertible. When J is symmetric, every pair of vectors u, v gives a
skew-adjoint matrix, the matrix vecMulVec v (u ᵥ* J) - vecMulVec u (v ᵥ* J) sending x
to B(u, x) v - B(v, x) u.
The file also records the matrices preserving J by congruence, M * J * Mᵀ = J: a square-zero
matrix Y with Y * J + J * Yᵀ = 0, that is, with Yᵀ skew-adjoint for J, gives the
form-preserving unipotents 1 + t • Y; a diagonal matrix preserves J as soon as it does so
entrywise; when J * J = -1, the row and column conventions agree for matrices with a left
inverse; and a scalar matrix c • 1 can only preserve an invertible J when c ^ 2 = 1.
Main results #
Matrix.isUnit_of_mul_self_eq_neg_one: a form matrix whose square is minus the identity is a unit over any ring.Matrix.IsSkewAdjoint.trace_eq_zero: a matrix skew-adjoint for an invertible matrix has trace zero when2is invertible.Matrix.isSkewAdjoint_vecMulVec_sub_vecMulVec: for symmetricJ, the matrixvecMulVec v (u ᵥ* J) - vecMulVec u (v ᵥ* J)is skew-adjoint forJ.Matrix.vecMulVec_sub_vecMulVec_mulVec: that matrix sendsxto(u ⬝ᵥ J *ᵥ x) • v - (v ⬝ᵥ J *ᵥ x) • u.Matrix.one_add_smul_mul_mul_transpose: a square-zero matrixYwithY * J + J * Yᵀ = 0gives form-preserving unipotents.Matrix.diagonal_mul_mul_transpose_diagonal: a diagonal matrix preservingJentrywise preserves it over any semiring.Matrix.transpose_mul_mul_eq_of_mul_mul_transpose_eq: forJ * J = -1, a matrix with a left inverse preservingJin the row convention preserves it in the column convention over any ring.Matrix.sq_eq_one_of_smul_one_mul_mul_transpose_eq: for invertibleJover a nonempty index type and a commutative semiring, a scalar matrix preservingJhas scalar of square one.
A matrix skew-adjoint for an invertible matrix has trace zero when 2 is invertible:
skew-adjointness makes Aᵀ conjugate to -A.
Matrices preserving a form #
A square-zero matrix Y with Y * J + J * Yᵀ = 0 gives form-preserving unipotents:
(1 + t • Y) * J * (1 + t • Y)ᵀ = J for every scalar t.
Over any semiring, a diagonal matrix preserves a form J as soon as it does so entrywise:
d i * J i j * d j = J i j for all i and j.
For a form J with J * J = -1, the row and column conventions agree: a matrix M with
a left inverse and M * J * Mᵀ = J satisfies Mᵀ * J * M = J, over any ring.
A scalar matrix preserving an invertible form J has scalar of square one, over a
nonempty index type and a commutative semiring.