Lemma col_vec_mult_eq { m n : nat } (mat : Matrix R m n) (v1 : Vector R n) (v2 : Vector R m) (e : (mat ** (col_vec v1)) = col_vec v2) : ∏ i : (stn m), Σ ((mat i) *pw v1) = v2 i. Proof. now apply toforallpaths; use col_vec_inj. Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.Combinatorics.StandardFiniteSets. Require Import UniMath.Combinatorics.Vectors. Require Import UniMath.Algebra.RigsAndRings. Require Import UniMath.Algebra.IteratedBinaryOperations. Require Import UniMath.Algebra.Matrix. Require Import UniMath.Algebra.Domains_and_Fields. Require Import UniMath.Algebra.GaussianElimination.Auxiliary. Require Import UniMath.Algebra.GaussianElimination.Vectors.