Lemmas about the matrix exponential #
In this file, we provide results about exp on matrixs over a topological or normed algebra.
Note that generic results over all topological spaces such as 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_conj_transposematrix.exp_diagonalmatrix.exp_block_diagonalmatrix.exp_block_diagonal'
Lemmas like exp_add_of_commute require a canonical norm on the type; while there are multiple
sensible choices for the norm of a matrix (matrix.normed_add_comm_group,
matrix.frobenius_normed_add_comm_group, matrix.linfty_op_normed_add_comm_group), none of them
are canonical. In an application where a particular norm is chosen using
local attribute [instance], then the usual lemmas about 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 exp, but hide the requirement for a norm inside the
proof.
matrix.exp_add_of_commutematrix.exp_sum_of_commutematrix.exp_nsmulmatrix.is_unit_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:
matrix.exp_negmatrix.exp_zsmulmatrix.exp_conjmatrix.exp_conj'
Implementation notes #
This file runs into some sharp edges on typeclass search in lean 3, especially regarding pi types. To work around this, we copy a handful of instances for when lean can't find them by itself. Hopefully we will be able to remove these in Lean 4.
TODO #
- Show that
matrix.det (exp π A) = exp π (matrix.trace A)
References #
A special case of pi.topological_ring for when R is not dependently typed.
A special case of function.algebra for when A is a ring not a semiring
Equations
- function.algebra_ring I A = pi.algebra I (Ξ» (αΎ° : I), A)
A special case of pi.algebra for when f = Ξ» i, matrix (m i) (m i) A.
Equations
- pi.matrix_algebra I R A m = pi.algebra I (Ξ» (i : I), matrix (m i) (m i) A)
A special case of pi.topological_ring for when f = Ξ» i, matrix (m i) (m i) A.