Lemmas about the matrix exponential #
In this file, we provide results about NormedSpace.exp on Matrixs
over a topological or normed algebra.
Note that generic results over all topological spaces such as NormedSpace.exp_zero
can be used on matrices without issue, so are not repeated here.
The topological results specific to matrices are:
Matrix.exp_transposeMatrix.exp_conjTransposeMatrix.exp_diagonalMatrix.exp_blockDiagonalMatrix.exp_blockDiagonal'
Lemmas like NormedSpace.exp_add_of_commute require a canonical norm on the type;
while there are multiple sensible choices for the norm of a Matrix (Matrix.normedAddCommGroup,
Matrix.frobeniusNormedAddCommGroup, Matrix.linftyOpNormedAddCommGroup), none of them
are canonical. In an application where a particular norm is chosen using
attribute [local instance], then the usual lemmas about NormedSpace.exp are fine.
When choosing a norm is undesirable, the results in this file can be used.
In this file, we copy across the lemmas about NormedSpace.exp,
but hide the requirement for a norm inside the proof.
Matrix.exp_add_of_commuteMatrix.exp_sum_of_commuteMatrix.exp_nsmulMatrix.isUnit_expMatrix.exp_units_conjMatrix.exp_units_conj'
Additionally, we prove some results about matrix.has_inv and matrix.div_inv_monoid, as the
results for general rings are instead stated about Ring.inverse:
TODO #
- Show that
Matrix.det (NormedSpace.exp ๐ A) = NormedSpace.exp ๐ (Matrix.trace A)