Permutations preserving a square matrix #
A permutation σ of the index set of a square matrix M preserves M when
M.submatrix σ σ = M. This file records the three closure properties
TauCeti.submatrix_perm_refl, TauCeti.submatrix_perm_trans and TauCeti.submatrix_perm_symm,
and packages them as the subgroup TauCeti.matrixSymmetryGroup of Equiv.Perm.
For the Cartan matrix of a Dynkin diagram these permutations are the diagram symmetries.
Main definitions #
TauCeti.matrixSymmetryGroup: the group of permutations preserving a given square matrix.
The identity permutation preserves every square matrix.
This is Mathlib's Matrix.submatrix_id_id with the reindexing spelled as Equiv.refl rather than
as id. The two are equal only by unfolding the coercion ⇑(Equiv.refl B) = id, which rw and
simp do not do: a statement carrying Matrix.submatrix_id_id where a proof about
⇑(Equiv.refl B) is expected is not type-correct at their implicit transparency, so no such
statement can be rewritten with.
If σ and τ preserve a square matrix then so does σ.trans τ.
If σ preserves a square matrix then so does σ.symm.
The symmetry group of a square matrix: the permutations of its index type which leave it unchanged when both axes are reindexed along them.