∀ {l : Type u_2} {m : Type u_3} {n : Type u_4} {α : Type u_5} [inst : Fintype m] [inst_1 : NonAssocSemiring α]
  [inst_2 : DecidableEq n] (M : Matrix l m α) (f : m ≃. n) (i : l) (j : n),
  (M * f.toMatrix) i j = Option.casesOn (f.symm j) 0 (M i)