Matrix inverse identities and entrywise bounds #
Applying a ring homomorphism f : R →+* S entrywise commutes with taking the inverse of a square
matrix, provided f is a local homomorphism (Matrix.map_nonsing_inv). The inverse
A⁻¹ = Ring.inverse (det A) • adjugate A is built from the determinant and the adjugate, which
commute with every ring homomorphism (RingHom.map_det, RingHom.map_adjugate), and a local
homomorphism commutes with Ring.inverse (map_ringInverse).
Locality is needed: ℤ →+* ℚ is not local, and the 1 × 1 matrix 2 over ℤ has inverse 0,
while its image in ℚ has inverse 1 / 2. Every ring homomorphism from a field to a nontrivial
ring is local, so the statement applies, for instance, to the casts ℚ → ℝ and ℝ → ℂ: an
inverse computed over ℚ is the inverse over ℝ.
Matrix.inv_submatrix_mul_row_eq_single normalizes the rows of a matrix whose columns off a pivot
set vanish to coordinate vectors, by the inverse of its pivot submatrix.
LinearMap.toMatrix_ringInverse identifies the matrix of an endomorphism's ring inverse.
For invertible matrices A, B over a linearly ordered field, inverse entries bounded by L
and entrywise difference bounded by d give |A⁻¹ i j - B⁻¹ i j| ≤ (card ι)² L² d
(Matrix.abs_inv_sub_inv_apply_le). This estimate supplies the inverse-entry Hölder modulus.
It is adapted from the
KLS formalization.
A local ring homomorphism applied entrywise commutes with the inverse of a square matrix.
If the column change Q kills x off the pivot columns e, then normalizing by the inverse of
the pivot matrix turns the rows of x * Q into coordinate vectors.
The matrix of the ring inverse of an endomorphism is the inverse of its matrix.
Entrywise modulus of the inverse. For invertible A, B over a linearly ordered field
whose inverse entries are bounded by L and whose entrywise difference is bounded by d,
|A⁻¹ᵢⱼ − B⁻¹ᵢⱼ| ≤ n² L² d with n = card ι.