Commit 2020-01-27 20:50 bba84730
View on Github →feat(linear_algebra): Matrix inverses for square nonsingular matrices (#1816)
- Prove that some matrices have inverses
- Finish the proof: show that the determinant is 0 if a column is repeated
- Show that nonsingular_inv is also a right inverse
- Cleanup and code movement
- Small lemmata on transpose
- WIP: some work on inverse matrices
- Code cleanup and documentation
- More cleanup and documentation
- Generalize det_zero_of_column_eq to remove the linear order assumption
- Fix linting issues.
- Unneeded import can be removed
- A little bit more cleanup
- Generalize nonsing_inv to any ring with inverse
- Improve comments for
nonsingular_inverse
- Remove the less general
det_zero_of_column_eq_of_char_ne_two
proof - Rename
cramer_map_val
->cramer_map_def
Co-Authored-By: Chris Hughes 33847686+ChrisHughes24@users.noreply.github.com - whitespace Co-Authored-By: Chris Hughes 33847686+ChrisHughes24@users.noreply.github.com
- whitespace: indent tactic proofs
- More renaming
cramer_map_val
->cramer_map_def
swap_mul_self_mul
can be asimp
lemma- Make parameter σ to
swap_mul_eq_iff
implicit - Update usage of
function.update_same
andfunction.update_noteq
- Replace
det_permute
withdet_permutation
Although the statement now gives the determinant of a permutation matrix, the proof is easier if we write it as a permuted identity matrix. Thus the proof is basically the same, except a different line showing that the entries are the same. - Re-introduce
matrix.det_permute
(now based onmatrix.det_permutation
) - Delete
cramer_at
and clean up the proofs depending on it - Replace
cramer_map
withcramer
after definingcramer
- Apply suggestions from code review Co-Authored-By: sgouezel sebastien.gouezel@univ-rennes1.fr
- Clean up imports
- Formatting: move } to previous lines
- Move assumptions of
det_zero_of_repeated_column
from variable to argument - whitespace
Insert space between
finset.filter
and the filter condition. Co-Authored-By: sgouezel sebastien.gouezel@univ-rennes1.fr - Improve docstrings
- Make argument to
prod_cancels_of_partition_cancels
explicit - Rename
replace_column
andreplace_row
toupdate_column
andupdate_row
- Replace
update_column_eq
withupdate_column_self
+ rewriting step - whitespace Newlines between all lemmas
- whitespace Newline before 'begin'
- Fix conflicts with latest mathlib
- Remove unnecessary explicitification of arguments