∀ {ι : Type u_1} {R : Type u_2} [inst : CommRing R] {M : Type u_3} [inst_1 : AddCommGroup M] [inst_2 : Module R M]
  [IsDomain R] [IsPrincipalIdealRing R] {N : Submodule R M} [Finite ι] (b : Module.Basis ι R M),
  Module.finrank R ↥N = Module.finrank R M → ∃ b' a ab', ∀ (i : ι), ↑(ab' i) = a i • b' i