proposition: Lemma matrix_product_transpose { m n p : nat } (A : Matrix CR m n) (B : Matrix CR n p) : (transpose (A ** B)) = ((transpose B) ** (transpose A)).
proof: Proof. intros. apply funextfun. intros i. apply funextfun. intros k. apply vecsum_eq. intros j. unfold col, row, pointwise, transpose, flip; cbn. apply rigcomm2. Defined.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.Combinatorics.StandardFiniteSets UniMath.Combinatorics.Vectors UniMath.Algebra.RigsAndRings UniMath.Algebra.IteratedBinaryOperations UniMath.Algebra.Matrix UniMath.Algebra.Domains_and_Fields UniMath.Algebra.GaussianElimination.Auxiliary UniMath.Algebra.GaussianElimination.Vectors