∀ {R : Type u_5} [inst : CommSemiring R] {S : Type u_1} [inst_1 : CommSemiring S] [inst_2 : Algebra R S] (M : Type u_2)
  [inst_3 : AddCommMonoid M] [inst_4 : Module R M] {N : Type u_3} [inst_5 : AddCommMonoid N] [inst_6 : Module R N]
  {P : Type u_4} [inst_7 : AddCommMonoid P] [inst_8 : Module R P] [inst_9 : Module S P] [inst_10 : IsScalarTower R S P]
  [inst_11 : Module.Free R M] {ε : N →ₗ[R] P} (ibc : IsBaseChange S ε)
  (b : Module.Basis (Module.Free.ChooseBasisIndex R M) R M) (this : Fintype (Module.Free.ChooseBasisIndex R M)),
  (↑(LinearEquiv.congrLeft P S b.repr ≪≫ₗ (Finsupp.llift P R S (Module.Free.ChooseBasisIndex R M)).symm) ∘ₗ
          IsBaseChange.linearMapRightBaseChangeHom S M ε) ∘ₗ
        ↑(LinearEquiv.baseChange R S (M →ₗ[R] N) (Module.Free.ChooseBasisIndex R M → N)
              (LinearEquiv.congrLeft N R b.repr ≪≫ₗ
                (Finsupp.llift N R R (Module.Free.ChooseBasisIndex R M)).symm)).symm =
      ↑⋯.equiv →
    Function.Bijective
      ⇑((↑(LinearEquiv.congrLeft P S b.repr ≪≫ₗ (Finsupp.llift P R S (Module.Free.ChooseBasisIndex R M)).symm) ∘ₗ
            IsBaseChange.linearMapRightBaseChangeHom S M ε) ∘ₗ
          ↑(LinearEquiv.baseChange R S (M →ₗ[R] N) (Module.Free.ChooseBasisIndex R M → N)
                (LinearEquiv.congrLeft N R b.repr ≪≫ₗ
                  (Finsupp.llift N R R (Module.Free.ChooseBasisIndex R M)).symm)).symm)