Inverse of an arrow matrix over a division ring #
For d : ι → D with every d τ ≠ 0 and α ω : ι → D, the arrow (bordered diagonal) matrix
B = [[diag d, ω], [α, 0]] is invertible when x = Σ_τ α_τ d_τ⁻¹ ω_τ ≠ 0, and the border corner
of its inverse is −x⁻¹. So x⁻¹ is minus a corner of the inverse of a linear matrix.
Over a division ring Matrix.inv is not available (it needs a commutative ring), so the inverse
is given explicitly and checked on both sides.
Main results #
arrow,arrowInv: the matrix and its explicit inverse (Schur complement ofdiag d,−x).arrow_mul_arrowInv,arrowInv_mul_arrow:B * B' = 1andB' * B = 1.arrow_isUnit;arrowInv_corner:B' (inr, inr) = −x⁻¹.
Related #
InverseIdentities.fromBlocks_mul_schur has the pivot in the lower-right block and gives a
one-sided inverse; here the pivot is the upper-left diagonal block and both products are checked.
Over a commutative ring this is a case of Mathlib's Matrix.invOf_fromBlocks₁₁_eq.
x = Σ_τ α_τ d_τ⁻¹ ω_τ.
Equations
- ThreeAxes.ArrowMatrix.arrowSum d α ω = ∑ τ : ι, α τ * (d τ)⁻¹ * ω τ
Instances For
The arrow matrix [[diag d, ω], [α, 0]], border indexed by Unit.
Equations
- ThreeAxes.ArrowMatrix.arrow d α ω = Matrix.fromBlocks (Matrix.diagonal d) (Matrix.replicateCol Unit ω) (Matrix.replicateRow Unit α) 0
Instances For
The inverse of arrow d α ω.
Equations
- One or more equations did not get rendered due to their size.